webForumDet fria alternativet
Logga in / Bli medlem

function

ASP

5 svar · 178 visningar · startad av aleborg

Medlem sedan jan. 20013 341 inlägg
Trådstart#1

jag använder en function som gör om ett tal till mb, kb och b!

Koden ser ut så här:

<%
'********************************************************************
' ConvFileSize: Konventerar filstorlek (i byte) till kB, MB och GB.
'********************************************************************
Function ConvFileSize (FileSize, Decimaler)
	Dim DotPos, strFileSize
	FileSize = cDbl(FileSize)

	' Gigabytes.
	If FileSize >= 1048576000 Then
		strFileSize = cStr(cSng(FileSize / 1048576000))
		DotPos = Instr(strFileSize, ".")
		IF DotPos THEN
			IF Decimaler = 0 THEN Decimaler = -1
			strFileSize = MID(strFileSize, 1, DotPos + Decimaler)
		END IF
		strFileSize = strFileSize + " gb"
	' Megabytes.
	ElseIf FileSize >= 1048576 THEN
		strFileSize = cStr(cSng(FileSize / 1048576))
		DotPos = Instr(strFileSize, ".")
		IF DotPos THEN
			IF Decimaler = 0 THEN Decimaler = -1
			strFileSize = MID(strFileSize, 1, DotPos + Decimaler)
		END IF
		strFileSize = strFileSize + " mb"
	' Kilboytes.
	ElseIf FileSize >= 1024 THEN
		strFileSize = cStr(cSng(FileSize / 1024))
		DotPos = InStr(strFileSize, ".")
		IF DotPos THEN
			IF Decimaler = 0 THEN Decimaler = -1
			strFileSize = MID(strFileSize, 1, DotPos + Decimaler)
		END IF
		strFileSize = strFileSize + " kb"
	' Bytes.
	Else
		IF FileSize > 1 THEN
			strFileSize = cStr(Int(FileSize)) + " b"
		ELSE
			strFileSize = cStr(Int(FileSize)) + " b"
		END IF
	END IF
	
	ConvFileSize = Trim(strFileSize)

End Function
%>

Sen i en loop har jag:

sise= ConvFileSize(objFile("MDownSize"),1)

Och skriver ut det med
<%=sise%>

Problemet är att jag får följande resultat:
5,727123 mb när jag borde få 5.7 mb

Fattar noll! Ett tag funkade det på min dator men på mina kollegors gjorde det inte...

Medlem sedan okt. 20005 273 inlägg
#2

kola in denna :)

Medlem sedan jan. 20013 341 inlägg
#3

nja, koden jag har fungerar på andra sidor men inte på den jag håller på med nu!

Medlem sedan dec. 200012 464 inlägg
#4

Förmodligen olika regionala intsällningar

Kan sättas om med session.lcid = värde

Värden för olika länder finns här
http://www.webeye.nu/default2.asp?que=asp/default.asp&exec=asp/LCID.asp

Medlem sedan jan. 20013 341 inlägg
#5

En fråga, är inte den här koden serverbaserad? Hur kommer det sig att på min dator visas det 5,7 mb men på min kollegas 5,727123 mb! Jag blir tokig!!!!

Medlem sedan jan. 20013 341 inlägg
#6

Tack LarsG, det funkade!

271 ms totalt · 4 externa anrop · v20260731065814-full.51f67c91
129 ms — deklarationer (db)
0 ms — hämta statistik (cache)
136 ms — hämta tråd, inlägg och bilagor (db)
132 ms — ändringar (db)