1

サードパーティのアップロード用に csv を作成する必要があります。彼らは、作成された csv ファイルを読み取ることができないと言っています。これには 2 行の余分なコードがあり、(メモ帳で開いたときに) 最後の行の最後の文字で終わっていないためです。それは本当ですが、その理由を誰か教えてもらえますか?

Dim _csvLine As New System.IO.StreamWriter(Server.MapPath("~/folder/_" & rptType.SelectedItem.Value.ToString & ".csv"), False)
Dim tb As New StringBuilder
Dim x As Integer = ds.Tables("csv").Columns.Count, y As Integer = 1
For Each row As Data.DataRow In ds.Tables("csv").Rows
    For Each col As Data.DataColumn In ds.Tables("csv").Columns
        If y <> x Then
            tb.Append(Trim(System.Text.RegularExpressions.Regex.Replace(row.Item(col).ToString, "\s+", " ", RegexOptions.IgnoreCase Or RegexOptions.Multiline)) & ",")
            y = y + 1
        Else
            tb.Append(Trim(System.Text.RegularExpressions.Regex.Replace(row.Item(col).ToString, "\s+", " ", RegexOptions.IgnoreCase Or RegexOptions.Multiline)))
            tb.AppendLine()
            y = 1
        End If
    Next
Next
_csvLine.WriteLine(Left(tb.ToString, Len(tb.ToString) - 2))
_csvLine.Flush()
_csvLine.Close()
_csvLine.Dispose()
4

2 に答える 2

2

によって 1 行が追加され_csvLine.WriteLineます。代わりに Write() を使用してください。 tb.AppendLine()は 2 行目を追加します。最終行では避けてください。

于 2012-11-02T19:20:00.467 に答える
0

_csvLine.WriteLine(ファイルの最後に改行を追加することを行っています。

于 2012-11-02T19:18:46.033 に答える