¿Cómo puedo determinar el tamaño de un archivo de texto?Determinación del tamaño del archivo en VB.NET
Sé que podría simplemente contar los caracteres, pero el archivo tendrá varios MB de tamaño.
¿Cómo puedo determinar el tamaño de un archivo de texto?Determinación del tamaño del archivo en VB.NET
Sé que podría simplemente contar los caracteres, pero el archivo tendrá varios MB de tamaño.
Dim myFile As New FileInfo("file.txt")
Dim sizeInBytes As Long = myFile.Length
Gracias por su respuesta. No hubiera preguntado si hubiera sabido que era tan simple. –
El uso de file
puede ser peligroso, ya que es también el nombre de una clase. Es mejor para codificar de la siguiente manera:
Dim myFile As New FileInfo("file.txt")
Dim sizeInBytes As Long = myFile.Length
Esto es bastante cierto, pero realmente debería encontrar un nombre mejor que 'myFile'. Es una buena oportunidad para escribir algo * descriptivo *. IntelliSense hace que usar nombres largos sea lo suficientemente fácil. –
-1 por copiar el código en la respuesta anterior. Esto es más o menos una copia directa de la respuesta aceptada. – cybermonkey
+1 porque usar palabras reservadas (o algo parecido) es una práctica horrible y me alegra que este comentario me haya impedido hacerlo. – Isaac
el código de la otra respuesta no comprueba el tamaño correcto del archivo:
Dim myFile As New FileInfo("file.txt")
Dim sizeInBytes As Long = MyFile.Length
probar este código en lugar
Dim infoReader As System.IO.FileInfo = _
My.Computer.FileSystem.GetFileInfo("C:\testfile.txt")
MsgBox("File C:\testfile.txt is " & infoReader.Length & " bytes.")
Es de How to: Determine a File's Size in Visual Basic (MSDN).
¿Por qué no funcionaría el primer fragmento de código? La especificación del archivo es diferente para los dos fragmentos de código, "file.txt" para el primer fragmento de código (especificación relativa del archivo) y "C: \ testfile.txt" para el segundo (especificación absoluta del archivo). El primero depende del directorio actual. ¿No funcionaría el primer fragmento de código si usaba "C: \ testfile.txt" en lugar de "file.txt"? –
Esta respuesta es simplemente incorrecta. *** La única razón por la que el primer fragmento de código no funcionará es si no tiene los permisos para leer el archivo. El primer fragmento de código es solo una versión abreviada del segundo, lo que hace que su 'no funciona' no sea válido .. *** – cybermonkey
Para aquellos que buscan la más corta versión VB:
FileLen("file.txt")
https://msdn.microsoft.com/en-us/library/microsoft.visualbasic.filesystem.filelen
me encontré por Google: http://www.dotnetperls.com/file-size-vbnet –
relacionada, pero para C#: * [¿Cómo se obtiene el tamaño del archivo en C#?] (Http://stackoverflow.com/questions/1380839) * –