本文主要介绍C#对路径访问拒绝的解决过程.详细,并通过示例代码详细介绍,对大家的学习或工作有一定的参考价值。下面让我们跟随边肖一起学习。
C#想写一个直接查询数据库的数据表,直接导出为csv文件。复制到导出的操作类后,已经捕捉到的错误提示是路径被拒绝,原因已查。原来是:FileStream (Path,FileMode。OpenOrCreate,FileAccess。Read Write),字符串read at Path必须包含文件名和格式。现在张贴完整的代码,以帮助像我这样的初学者。
私有void button1_Click(对象发送方,EventArgs e)
{
系统。IO . StreamReader st
//因为我的查询语句比较长,所以读了txt文本,然后再做查询。
st=新系统。IO.StreamReader(应用程序。StartupPath '\\SQL2.txt ',System。text . coding . default);
string sting SQL=ST . ReadToEnd();
ST . Close();
文本框1。Text=stingsql
DataTable dt=new DataTable();
dt=bc。query command(sting SQL);
String path=@' f: \导出病历备份\患者统计。CSV ';//文件名必须添加到此处的路径中,否则
ImportToCSV(dt,file path);
}
公共静态void ImportToCSV(DataTable dt,string filepath)
{
FileStream fs=null
StreamWriter sw=null
尝试
{
fs=新文件流(文件路径,文件模式。创建,文件访问。写);
sw=新StreamWriter(fs,编码。默认);
字符串头=“”;
//拼接列标题
for(int cNum=0;cNum dt。列数;cNum)
{
head=dt。列[cNum]。ColumnName ',';
}
//csv文件被写入列标题
西南。WriteLine(head);
字符串数据=“”;
//csv写入数据
for(int I=0;我dt。行数。计数;我)
{
字符串数据2=字符串。空的;
//拼接线数据
for(int cnum 1=0;cNum1 dt。列数;cNum1)
{
数据2=数据2 ''' dt。行[i][dt。列[cNum1]。列名]。ToString()“,”;
}
bool flag=data!=data2
if(标志)
{
西南。WriteLine(data 2);
}
数据=数据2;
}
Msg='数据已成功导出到:' filepath
MessageBox。show(msg);
}
catch(例外ex)
{
//记录器。错误('未能导出csv!'前任。消息);
MessageBox。显示('导出失败'例如。消息);
返回;
}
最后
{
如果(sw!=空)
{
西南。close();
}
如果(fs!=空)
{
fs。close();
}
sw=null
fs=null
}
}
示例2
问题代码:
私有布尔值GetChannelInfo()
{
ComCheckWindow。LoadCheckResult('准备加载项目通道信息',颜色。from name(' Green ');
XML document proFile=new XML document();//读取项目配置文件
侧写。load(profile path);
XmlNodeList channelList=proFile。SelectSingleNode('Project ')。子节点;
如果(渠道主义者。Count==0)返回false
.
返回true
}
“配置文件”中出现错误。Load(proFilePath)"语句,表示对Path …(配置文件path的值)的访问被拒绝。
尝试重新路由目标文件(从驱动器C到驱动器D)或提升程序的运行权限(以管理员身份运行Visual Studio时打开项目文件)是无效的。
最后,在检查程序时,发现路径proFilePath的值不正确。运行”配置文件。Load(proFilePath)”要求路径proFilePath指向某个XML文件,但是这里的Path的值是XML文件所在目录的路径。因为Load函数的参数指向对象类型不匹配,所以会导致错误。
就是这样。本文详细讲解了C#对路径访问拒绝的解决过程.已经介绍到这里了。关于C#拒绝访问的更多信息,请搜索我们以前的文章或继续浏览下面的相关文章。希望大家以后能多多支持我们!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。