Este artículo es un artículo espejo de traducción automática, por favor haga clic aquí para saltar al artículo original.

Vista: 4609|Respuesta: 1

[Fuente] Optimización de memoria de archivos de disco con lectura de flujo .NET/C#

[Copiar enlace]
Publicado en 9/6/2023 22:29:50 | | | |
Requisitos: Antes escribí que el formato del archivo se comprueba con la cabecera del archivo, de hechoSolo necesitas leer los primeros bytes del archivo para juzgar, y no necesitas leer todo el archivoEste artículo utiliza Stream para leer los primeros bytes de un archivo de disco y optimizar el espacio de memoria, que en realidad es lo que esLeer bajo demanda

Revisión:

Tamaño de archivo Bytes a unidades de KB, MB, GB, TB conversión inteligente
https://www.itsvse.com/thread-3062-1-1.html

.NET/C# Sube archivos basados en byte[] en la cabecera del archivo
https://www.itsvse.com/thread-10594-1-1.html
usoFile.ReadAllBytesLeyendo todo el archivo de solicitud, puedes ver que el programa está muy ocupado. Como se muestra a continuación:



De hecho, solo se necesitan 2 bytes para leerse para determinar si el archivo es una aplicación o noStreamReaderLee los primeros 2 bytes del archivo como se muestra a continuación:

El inicio de sesión del hipervínculo es visible.



Puedes verlo en la memoria originalUso reducido de 287,11 MB a 20,55 MB(Sin leer el archivo, la memoria por defecto se ocupa tras el inicio del programa: 20,02 MB), lo que muestra que se ahorran muchos gastos innecesarios de memoria. El código es el siguiente:

Si solo queremos ver el principio del texto, podemos usar el comando más para verlo, ¿cómo usar código .NET/C# para leer el contenido del texto?

Se interpreta de dos maneras, y el código es el siguiente:



Dado que este archivo es contenido de texto plano,Si es UTF-8 u otro formato de codificación, los primeros bytes del archivo deben ser ignorados, es decir, la posición del flujo debe establecerse (por ejemplo, Posición = 2)

(Fin)





Anterior:[MSSQL] GUIDs ordenados y GUIDs no ordenados de SQL SERVER como pruebas principales de agregación de claves
Próximo:Perspectiva: vi la firma de una bloguera en el jardín del blog
 Propietario| Publicado en 1/7/2023 21:13:08 |
Lee el archivo txt completo

Renuncia:
Todo el software, materiales de programación o artículos publicados por Code Farmer Network son únicamente para fines de aprendizaje e investigación; El contenido anterior no se utilizará con fines comerciales o ilegales; de lo contrario, los usuarios asumirán todas las consecuencias. La información de este sitio proviene de Internet, y las disputas de derechos de autor no tienen nada que ver con este sitio. Debes eliminar completamente el contenido anterior de tu ordenador en un plazo de 24 horas desde la descarga. Si te gusta el programa, por favor apoya el software genuino, compra el registro y obtén mejores servicios genuinos. Si hay alguna infracción, por favor contáctanos por correo electrónico.

Mail To:help@itsvse.com