路径c#错误中的非法字符
本文关键字:非法 字符 错误 路径 | 更新日期: 2023-09-27 17:54:02
我得到错误
路径
中的非法字符
表示下面的代码。请帮帮我。
response.Clear();
response.Charset = "";
Response.ContentEncoding = System.Text.Encoding.Default;
// set the response mime type for excel
response.ContentType = "application/vnd.ms-excel";
string sFileName = "Testeeeeee.xls";
response.AddHeader("Content-Disposition", "attachment;filename='"" + sFileName + "'"");
// create a string writer
using (StringWriter sw = new StringWriter())
{
using (HtmlTextWriter htw = new HtmlTextWriter(sw))
{
// instantiate a datagrid
DataGrid dg = new DataGrid();
dg.DataSource = DS.Tables[0];
dg.DataBind();
dg.RenderControl(htw);
string sPath = @"E:'CR-12'Test.xls";
File.WriteAllText(sw.ToString(), sPath);// I get the error at this line
response.End();
参数倒置。按以下步骤执行:
File.WriteAllText(sPath,sw.ToString());
您混淆了File.WriteAllText
的参数。第一个是路径,第二个是内容。你需要
File.WriteAllText(sPath, sw.ToString());
对
的调用File.WriteAllText(sw.ToString(), sPath);
参数顺序错误。应该是
File.WriteAllText(sPath, sw.ToString());
对于收到此错误的其他人,请确保正确使用反斜杠,因为它们也是转义字符。单个反斜杠可能导致此错误。使用两个反斜杠来正确输出一个转义的反斜杠
,
System.IO.File.WriteAllText("C:''file.txt", output);
这个问题可能与安全有关。你的网页不会默认访问E盘