Из очень большого файла Excel, мы зациклим и сохраняем значения из 3 столбцов в переменные (uName (Row), mgrName (Row), title (Row)).Из этого Excel мы также получаем количество строк.
Проблема возникает, когда я пытаюсь использовать StringBuilder для создания отдельного файла .xls для последующего использования в приложении.Код у меня выглядит следующим образом:
Dim XLstring As System.Text.StringBuilder = New System.Text.StringBuilder
Dim newfile As System.IO.StreamWriter
Dim fileTitle
XLstring.Append("Name,Manager,Title" & vbCrLf)
For X As Integer = 2 To countrows
If X = countrows Then
MsgBox(countrows)
MsgBox(uName(X) & "," & mgrName(X) & "," & title(X))
End If
XLstring.Append(uName(X) & "," & mgrName(X) & "," & title(X) & vbCrLf)
Next
fileTitle = System.DateTime.Now.ToString("yy-MM-dd hh-mm-ss") & ".xls"
filePath2 = "myPath" & fileTitle
newfile = File.CreateText(filePath2)
newfile.WriteLine(XLstring)
Это работает по большей части.Я вижу, что с помощью MsgBox я получаю правильное количество строк, а также правильную информацию в последнем ряду.Однако когда я открываю полученный файл .xls, в конце файла отсутствуют записи.Кроме того, если бы я изменил
XLstring.Append("Name,Manager,Title" & vbCrLf)
на что-то вроде
XLstring.Append("Name,Manager" & vbCrLf)
, точное число символов, удаленных из строки добавления, теперь будет успешно отображаться в конце файла.где информация отсутствует.
Есть ли какая-то странная функциональность, которую я не понимаю, используя эти функции?Я полностью потерян и не понимаю этого поведения.