Dit artikel is een spiegelartikel van machinevertaling, klik hier om naar het oorspronkelijke artikel te gaan.

Bekijken: 4609|Antwoord: 1

[Bron] optimalisatie van het geheugengeheugen voor het .NET/C# Stream Read schijfbestand

[Link kopiëren]
Geplaatst op 09-06-2023 22:29:50 | | | |
Vereisten: Ik heb eerder geschreven dat het bestandsformaat wordt gecontroleerd door de header van het bestand, eigenlijkJe hoeft alleen de eerste paar bytes van het bestand te lezen om te beoordelen, en je hoeft niet het hele bestand te lezenDit artikel gebruikt Stream om de eerste paar bytes van een schijfbestand te lezen en de geheugenruimte te optimaliseren, wat het eigenlijk isLees op aanvraag

Recensie:

Bestandsgrootte Bytes naar KB, MB, GB, TB eenheden intelligente conversie
https://www.itsvse.com/thread-3062-1-1.html

.NET/C# Uploadt bestanden op basis van byte[] in de bestandsheader
https://www.itsvse.com/thread-10594-1-1.html
gebruikenFile.ReadAllBytesAls je het hele applicatiebestand leest, zie je dat het programma erg druk is. Zoals hieronder getoond:



In feite kost het maar 2 bytes om te lezen om te bepalen of het bestand een applicatie is of nietStreamReaderLees de eerste 2 bytes van het bestand zoals hieronder weergegeven:

De hyperlink-login is zichtbaar.



Je kunt het zien uit het originele geheugenVerminderd gebruik van 287,11 MB naar 20,55 MB(Zonder het bestand te lezen, wordt het standaardgeheugen ingevuld nadat het programma is gestart: 20,02 MB), wat aantoont dat veel onnodige geheugenkosten worden bespaard. De code is als volgt:

Als we alleen het begin van de tekst willen zien, kunnen we het more-commando gebruiken om het te bekijken; hoe gebruiken we .NET/C#-code om de tekstinhoud te lezen?

Het wordt op twee manieren gelezen, en de code is als volgt:



Aangezien dit bestand platte tekst bevat,Als het UTF-8 of een ander coderingsformaat is, moeten de eerste paar bytes van het bestand worden genegeerd, dat wil zeggen, de positie van de stroom moet worden ingesteld (bijv. Positie = 2)

(Einde)





Vorig:[MSSQL] SQL SERVER geordende GUID's en ongeordende GUID's als primaire sleutelaggregatie-indextests
Volgend:Inzicht: Ik zag de handtekening van een blogger uit de blog tuin
 Huisbaas| Geplaatst op 01-07-2023 21:13:08 |
Lees het volledige txt-bestand

Disclaimer:
Alle software, programmeermaterialen of artikelen die door Code Farmer Network worden gepubliceerd, zijn uitsluitend bedoeld voor leer- en onderzoeksdoeleinden; De bovenstaande inhoud mag niet worden gebruikt voor commerciële of illegale doeleinden, anders dragen gebruikers alle gevolgen. De informatie op deze site komt van het internet, en auteursrechtconflicten hebben niets met deze site te maken. Je moet bovenstaande inhoud volledig van je computer verwijderen binnen 24 uur na het downloaden. Als je het programma leuk vindt, steun dan de echte software, koop registratie en krijg betere echte diensten. Als er sprake is van een inbreuk, neem dan contact met ons op via e-mail.

Mail To:help@itsvse.com