12 c# string replace c#-3.0 c#-4.0
我在这里看到一些与删除双引号有关的问题.但它没有解决我的问题.他们告诉使用Replace或Trim功能.我用过,但问题仍然存在.
我的代码:
DataTable dt = TypeConveriontHelper.ConvretExcelToDataTable(SourceAppFilePath);
string targetPath = BatchFolderPath + @"\" + "TRANSACT.INX";
StreamWriter wrtr = null;
wrtr = new StreamWriter(targetPath);
for (int x = 0; x < dt.Rows.Count; x++)
{
string rowString = "";
for (int y = 0; y < dt.Columns.Count; y++)
{
if (y == dt.Columns.Count - 1)
{
rowString += "\"" + dt.Rows[x][y].ToString() + "\"";
}
else
{
rowString += "\"" + dt.Rows[x][y].ToString() + "\"~";
}
}
rowString.Replace('"', ' ').Trim();
wrtr.WriteLine(rowString);
}
wrtr.Close();
wrtr.Dispose();
Run Code Online (Sandbox Code Playgroud)
我试过rowString.Replace('"', ' ').Trim();
在上面的代码中使用.但双引号存在.向我展示一个解决方案.谢谢.
Hab*_*bib 30
您需要将其分配回rowString
:
rowString = rowString.Replace('"', ' ').Trim();
Run Code Online (Sandbox Code Playgroud)
row.String.Replace(...)
会返回一个字符串,因为你没有给它任何东西它会被丢弃.它不会改变原始rowString
对象.
您可以使用String.Empty
或""
替换双引号和空字符串,而不是单个空格' '
.所以你的陈述应该是:
rowString = rowString.Replace("\"", string.Empty).Trim();
Run Code Online (Sandbox Code Playgroud)
(请记住将双引号作为字符串 传递"\""
,因为使用string.Empty的方法重载将要求两个参数都是string类型).
Trim()
如果你试图string.Replace
在字符串的开头或结尾处删除添加的空格,最后你可能会被删除.
pan*_*nts 16
修剪可以删除任何字符,而不仅仅是空格.
myString = myString.Trim('"');
Run Code Online (Sandbox Code Playgroud)
http://msdn.microsoft.com/en-us/library/d4tt83f9%28v=vs.110%29.aspx
归档时间: |
|
查看次数: |
62839 次 |
最近记录: |