Krav: Jag skrev tidigare att filformatet kontrolleras av filens header, faktisktDu behöver bara läsa de första bytena av filen för att avgöra, och du behöver inte läsa hela filenDen här artikeln använder Stream för att läsa de första bytena av en diskfil och optimera minnesutrymmet, vilket faktiskt är vad det ärLäs on demand。
Recension:
användaFile.ReadAllBytesNär man läser hela ansökningsfilen kan man se att programmet är mycket upptaget. Som visas nedan:
Faktum är att det bara krävs 2 byte för att läsa för att avgöra om filen är en applikation eller inteStreamReaderLäs de första 2 bytena av filen enligt nedan:
Inloggningen med hyperlänken är synlig.
Du kan se från originalminnetMinskad användning från 287,11 MB till 20,55 MB(Utan att läsa filen tas standardminnet upp efter att programmet startat: 20,02 MB), vilket visar att många onödiga minneskostnader sparas. Koden är följande:
Om vi bara vill se början av texten kan vi använda kommandot more för att visa den, hur använder man .NET/C#-kod för att läsa textinnehållet?
Den läses på två sätt, och koden är följande:
Eftersom denna fil är ren text,Om det är UTF-8 eller annat kodningsformat måste de första bytena i filen ignoreras, det vill säga strömmens position måste sättas (t.ex. Position = 2)。
(Slut)
|