アップロードされた txt ファイルを解析しようとしています。解析中にエラーが発生した場合は、ファイルを保存する必要があります。問題は、パーサーがストリーム リーダーを使用していて、エラーが発生した場合、ファイルの内容ではなく空のファイルを保存することです。
Dim file As HttpPostedFile = context.Request.Files(0)
If Not IsNothing(file) AndAlso file.ContentLength > 0 AndAlso Path.GetExtension(file.FileName) = ".txt" Then
Dim id As Integer = (Int32.Parse(context.Request("id")))
Try
ParseFile(file, id)
context.Response.Write("success")
Catch ex As Exception
Dim filename As String = file.FileName
Dim uploadPath = context.Server.MapPath("~/Errors/MyStudentDataFiles/")
file.SaveAs(uploadPath + id.ToString() + filename)
End Try
Else
context.Response.Write("error")
End If
私の ParseFile メソッドは次のようなものです
Protected Sub ParseFile(ByVal studentLoanfile As HttpPostedFile, ByVal id As Integer)
Using r As New StreamReader(studentLoanfile.InputStream)
line = GetLine(r)
End Using
End Sub
parseFile サブに渡される前にファイルを複製する方法、または内容を失うことなくファイルを読み取る方法はありますか? 前もって感謝します