Тази статия е огледална статия за машинен превод, моля, кликнете тук, за да преминете към оригиналната статия.

Изглед: 24894|Отговор: 0

[Източник] Stream Stream използва множество предпазни мерки

[Копирай линк]
Публикувано в 2.08.2019 г. 13:52:30 ч. | | | |
System.ArgumentOutOfRangeException: 索引超出范围。必须为非负值并小于集合大小。
Изключението, хвърлено от системния дневник, е показано на следната фигура:



Причината за изключението е, че когато запазя потока, системата го чете отвъд размера на потока.

Използвайте един и същ поток два пъти, за да отбележите 2 точки:

1. Потокът ще запази позиция: Stream.Position, която представлява позицията в текущия поток, и всяко четене започва от тази позиция, като тази позиция ще бъде зададена на последната позиция след приключване на четенетоПървия път, когато прочета целия стрийм, позицията стига до края, а втория път не мога да прочета съдържанието.Затова трябва да зададеш контекста преди второто четене. Request.InputStream.Position=0;

2. Изявлението за използване не може да се използва при първото четене. Операторът using всъщност добавя try, накрая блок, при който се изпълнява методът Dispose на обекта. Така второто четене няма да съдържа съдържание.


Код за резолюция:

Преди да запазите потока, извикайте следния код:







Предишен:Baidu Wangpan заобикаля VIP ограниченията и подобрява скоростта на изтегляне
Следващ:Въведение и практика на NoSQL бази данни (базирани на MongoDB и Redis)
Отричане:
Целият софтуер, програмни материали или статии, публикувани от Code Farmer Network, са само за учебни и изследователски цели; Горното съдържание не трябва да се използва за търговски или незаконни цели, в противен случай потребителите ще понесат всички последствия. Информацията на този сайт идва от интернет, а споровете за авторски права нямат нищо общо с този сайт. Трябва напълно да изтриете горното съдържание от компютъра си в рамките на 24 часа след изтеглянето. Ако ви харесва програмата, моля, подкрепете оригинален софтуер, купете регистрация и получете по-добри услуги. Ако има нарушение, моля, свържете се с нас по имейл.

Mail To:help@itsvse.com