我正在尝试使用 c# 从 mssql 导出 csv 格式的图像列,然后我正在使用 Pandas 读取该 csv。
问题是在从 csv 文件读取数据时我得到了空白数据
以下代码将数据表从 mssql 导出为 csv 格式
public bool ExportDataTableToFileOnServer(DataTable dtExcel, string path, bool header = true)
{
if (path == null)
return false;
StreamWriter streamWriter = new StreamWriter(path, false);
int count = dtExcel.Columns.Count;
if (header)
{
for (int index = 0; index < count; ++index)
{
streamWriter.Write((object)dtExcel.Columns[index]);
if (index < count - 1)
streamWriter.Write("|");
}
streamWriter.Write(streamWriter.NewLine);
}
string text = "";
foreach (DataRow row in dtExcel.Rows)
{
for (int columnIndex = 0; columnIndex < count; ++columnIndex)
{
if (!Convert.IsDBNull(row[columnIndex]))
{
if (row[columnIndex].GetType().Name == "Byte[]")
{
text = System.Text.Encoding.UTF8.GetString((byte[])row[columnIndex]);
}
else
text = row[columnIndex].ToString().Trim().Replace(System.Environment.NewLine, " ");
streamWriter.Write(text);
}
else
streamWriter.Write(string.Empty);
if (columnIndex < count - 1)
streamWriter.Write("|");
}
streamWriter.Write(streamWriter.NewLine);
}
streamWriter.Close();
return true;
}
以下是输出
下面是使用python读取同一个csv文件的代码
data = pd.read_csv(filepath_or_buffer=path,sep='|', encoding='utf-8')
下图显示了数据框中的空白数据
我不明白为什么它会出现空白。 任何帮助将不胜感激