데이터베이스에서 검색 한 데이터를 사용하여 탭으로 구분 된 파일을 만들려고합니다. MemoryStream을 사용하여 StreamWriter를 만들고이를 쓰는 방법은 제대로 작동하는 것 같습니다. "while (rdr.Read())"루프는 약 40 번 실행됩니다. 그러나 MemoryStream을 FileStream으로 변환하는 방법으로 가면 탭으로 구분 된 결과 파일은 34 행만 표시되고 34 행은 완료되지 않습니다. 뭔가가 출력을 제한하고 있습니다. 갑자기 종료되는 데이터 자체에 문제가있는 것을 보지 마십시오.MemoryStream을 FileStream으로 변환 할 때 FileStream 데이터가 불완전합니다.
여기 변환 방법입니다 :
protected internal static void ConvertMemoryStreamToFileStream(MemoryStream ms, String newFilePath){
using (FileStream fs = File.OpenWrite(newFilePath)){
const int blockSize = 1024;
var buffer = new byte[blockSize];
int numBytes;
ms.Seek(0, SeekOrigin.Begin);
while ((numBytes = ms.Read(buffer, 0, blockSize)) > 0){
fs.Write(buffer, 0, numBytes);
}
}
}
모든 모든 도움을 감사합니다, 감사합니다.
당신은 언어 태그를 추가하는 것을 잊었습니다 - C# ?. 아무도이 문제를 보지 못한 것처럼 보입니다. – oers