我收到消息「流不可讀」的聲明:流未讀取錯誤
using (StreamReader sr = new StreamReader(ms))
我已經試過張貼在這裏沒有成功的祕訣。謝謝您的幫助。
這是我的代碼:
XmlSerializer xmlSerializer = new XmlSerializer(typeof(Conflict));
//Serialize Conflicts array to memorystream as XML
using (MemoryStream ms = new MemoryStream())
{
using (StreamWriter sw = new StreamWriter(ms))
{
foreach (Conflict ct in Conflicts)
xmlSerializer.Serialize(sw, ct);
sw.Flush(); //Site tip
ms.Position = 0; //Site tip
}
//Retrieve memory stream to string
using (StreamReader sr = new StreamReader(ms))
{
string conflictXml = String.Format(CultureInfo.InvariantCulture, "{0}</NewDataSet>",
格式化代碼會更容易跟蹤和幫助調試 – BrMcMullin 2011-03-22 20:36:32
的StreamWriter和StreamReader的配置的時候都關閉底層流,因此,當你在試圖從被關閉的流中讀取時處理StreamWriter,流不再開放閱讀或寫作。不幸的是,我現在不在我的電腦上,但本網站上的其他答案都有用於封裝基礎流的類,以防止它被關閉。 – 2011-03-22 20:37:50
可以發現一個包裝類鏈接到從我以前的答案:http://stackoverflow.com/questions/5261123/why-is-my-filestream-object-being-disposed-of-when-im-using- a-binaryreader-obj/5261202#5261202 – 2011-03-22 20:41:28