Tämä artikkeli on konekäännöksen peiliartikkeli, klikkaa tästä siirtyäksesi alkuperäiseen artikkeliin.

Näkymä: 38466|Vastaus: 0

[Vinkkejä] Kuinka tallentaa striimi tiedostoon C#/.NET-muodossa

[Kopioi linkki]
Julkaistu 2021-5-16 21:12:58 | | |
Katsoin joitakin blogikirjoituksia netissä Streamin tallentamisesta tiedostoon,Monet ovat virheellisiä。 (Löysin useita ongelmia: huono suorituskyky, epänormaali kun virta on liian suuri)

Kun saat streamin, miten tallentaa tämä virta tyylikkäästi koodiin

Tyylikkäin menetelmä tulisi olla CopyTo- tai CopyToAsync-menetelmä


tässä inputStream.Seek(0, SeekOrigin.Begin); Ei välttämättä, käytä tätä koodia omien tarpeidesi mukaan, kuten sinun tarvitsee kopioida virta vain kymmenenneltä tavulta jne

Asynkronisen lähestymistavan käyttö vie hieman kauemmin tämän kirjoituksen osalta, mutta se parantaa suorituskykyä ja mahdollistaa suorittimen hoitaa muita tehtäviä




Huomaa, että kun käytät CopyToAsyncia, muista lisätä odotus, kun suoritat tämän koodin, suoritus siirretään IO:lle, suurin osa IO-prosessoinnista ei vaadi prosessoria laskentaan, joten suorituskyky paranee

Jos iputStream tulee ulkopuolelta, en suosittele vapauttamaan sitä tämän menetelmän sisällä, miksi? Käytin hyvää striimiä ja se sammui, kun kuolin liiketoiminnassa

Toinen tapa on hallita muistireplikaatiovälimuistia itse, jolloin siihen tulee lisämuistikopio


Tämän menetelmän avulla voit muuttaa uuden tavun[1024] arvoa, jolloin voit hallita kopioitua välimuistia

Seuraavat ovat joitakin menetelmiä, joita ei suositella, mutta jotka ovat käteviä kirjoittamiseen


Yllä oleva menetelmä kopioi muistin kahdesti, ja jos syöteresurssin pituus on 1G, se vie 2G resursseja

Samankaltainen kuin pyytää suurta välimuistia, kuten seuraavassa koodissa on esitetty


Tehokkuuden ja koodin eleganssin osalta ne ovat itse asiassa heikompimpia kuin CopyTo-menetelmä, ja myös virtauksen vuoksi. Pituus ja pituus eivät määrää välimuistia, joten se ei ole yhtä hyvä kuin toinen menetelmä

Alla on todella hidas menetelmä, yksi tavu kerrallaan kirjoittaminen on todella hidasta


Siirretty:Hyperlinkin kirjautuminen on näkyvissä.
(Loppu)




Edellinen:NPOI Operation Excel Yksityiskohtainen selitys
Seuraava:X-Forwarded-For useita IP-osoitteita HTTP-pyyntöotsikossa
Vastuuvapauslauseke:
Kaikki Code Farmer Networkin julkaisemat ohjelmistot, ohjelmamateriaalit tai artikkelit ovat tarkoitettu vain oppimis- ja tutkimustarkoituksiin; Yllä mainittua sisältöä ei saa käyttää kaupallisiin tai laittomiin tarkoituksiin, muuten käyttäjät joutuvat kantamaan kaikki seuraukset. Tämän sivuston tiedot ovat peräisin internetistä, eikä tekijänoikeuskiistat liity tähän sivustoon. Sinun tulee poistaa yllä oleva sisältö kokonaan tietokoneeltasi 24 tunnin kuluessa lataamisesta. Jos pidät ohjelmasta, tue aitoa ohjelmistoa, osta rekisteröityminen ja hanki parempia aitoja palveluita. Jos rikkomuksia ilmenee, ota meihin yhteyttä sähköpostitse.

Mail To:help@itsvse.com