| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1408 人关注过本帖
标题:异常:用自己编写的记事本打开系统文件无法进行读取
只看楼主 加入收藏
步向巅峰
Rank: 5Rank: 5
来 自:河南
等 级:贵宾
威 望:17
帖 子:110
专家分:371
注 册:2013-4-26
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:10 
异常:用自己编写的记事本打开系统文件无法进行读取
想用自己编写的记事本打开系统文件,开始的获取系统文件路径都没问题,可是到读取的过程中出现了异常,求教:
程序代码:
static void Main()
        {
            string[] getArgs = Environment.GetCommandLineArgs();//获取命令行参数,经测试,打开系统文件时的文件路径在第二行
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new FrmNote(getArgs));
        }

程序代码:
 public FrmNote(string[] getSystemFilePath)
        {
            if (getSystemFilePath.Length > 1)//调试时命令行参数只有1行,只有当打开系统文件时命令行参数才大于1行
            {
                MessageBox.Show(getSystemFilePath[1]);
                FileStream fs = new FileStream(getSystemFilePath[1], FileMode.Open, FileAccess.ReadWrite, FileShare.ReadWrite);
                MessageBox.Show("a");
                StreamReader sr = new StreamReader(fs);
                MessageBox.Show("b");
                tbContent.Text = sr.ReadToEnd();
                MessageBox.Show("c");
                sr.Close();
                fs.Close();
            }
            InitializeComponent();
            //ff = new FrmFind();
            //ff.Show(this);
            //ff.Hide();
        }

 public System.Windows.Forms.TextBox tbContent;

尝试打开系统文件时出现异常:
图片附件: 游客没有浏览图片的权限,请 登录注册
图片附件: 游客没有浏览图片的权限,请 登录注册
图片附件: 游客没有浏览图片的权限,请 登录注册
图片附件: 游客没有浏览图片的权限,请 登录注册

发现问题出现在
tbContent.Text = sr.ReadToEnd();

却不知道怎么解决,毫无头绪
搜索更多相关主题的帖子: 记事本 
2014-06-17 17:09
编号1016
Rank: 3Rank: 3
等 级:论坛游侠
威 望:5
帖 子:46
专家分:188
注 册:2014-5-8
收藏
得分:0 
我也试着去执行一次,getArgs 里的路径是这个项目.exe的路径,并不是打开我记事本的路径;OpenFileDialog()这个方法里的FileName去获取你打开文件的的路径!我也只是初学者懂得不是很多,其它我看了好久也没看出什么来

相互学习,让自己变得更强大!
2014-06-17 21:41
步向巅峰
Rank: 5Rank: 5
来 自:河南
等 级:贵宾
威 望:17
帖 子:110
专家分:371
注 册:2013-4-26
收藏
得分:0 
刚开始是不知道怎么获取系统文件的路径,现在是获取到了正确的路径,结果到读取的地方出问题了,可是这问题也出的莫名其妙,类型什么的都是匹配的,可是就是运行不下去了,同样的代码在调试时用没问题,结果到实际运行出错。网上查了,有人说要什么要与注册表关联,可是我不知道怎么关联,也不知道为什么要关联,更不知道关联和能不能给文本框赋值有何关系
2014-06-18 17:41
编号1016
Rank: 3Rank: 3
等 级:论坛游侠
威 望:5
帖 子:46
专家分:188
注 册:2014-5-8
收藏
得分:0 
回复 3 楼 步向巅峰
应该不是那关联问题吧!我之前也做了一个,就没有出现这问题,有时候类型匹配没错,但它不一定是对就像字符串它有很多 空格 它是字符串;你那项目有多大,小的话能不能发给我看看,也让我学习学一下

相互学习,让自己变得更强大!
2014-06-18 22:21
步向巅峰
Rank: 5Rank: 5
来 自:河南
等 级:贵宾
威 望:17
帖 子:110
专家分:371
注 册:2013-4-26
收藏
得分:0 
行,
记事本v2.0_未完成.zip (105.92 KB)
2014-06-19 10:23
编号1016
Rank: 3Rank: 3
等 级:论坛游侠
威 望:5
帖 子:46
专家分:188
注 册:2014-5-8
收藏
得分:0 
回复 5 楼 步向巅峰
你那项目不是可以运行嘛,至于要打开其他格式的文本我到是没事过

相互学习,让自己变得更强大!
2014-06-20 16:23
步向巅峰
Rank: 5Rank: 5
来 自:河南
等 级:贵宾
威 望:17
帖 子:110
专家分:371
注 册:2013-4-26
收藏
得分:0 
回复 6 楼 编号 1016
你搞错了,我不是说项目不可以运行,而是说在桌面上建一个记事本,里面输入文字,然后用自己编写的程序打开,即直接更改打开方式,而不是调试的过程中打开
2014-06-20 17:14
编号1016
Rank: 3Rank: 3
等 级:论坛游侠
威 望:5
帖 子:46
专家分:188
注 册:2014-5-8
收藏
得分:0 
你是说像用记事本查看HTML后台代码一样,来查看一些.txt文本吗

相互学习,让自己变得更强大!
2014-06-20 22:23
步向巅峰
Rank: 5Rank: 5
来 自:河南
等 级:贵宾
威 望:17
帖 子:110
专家分:371
注 册:2013-4-26
收藏
得分:0 
图片附件: 游客没有浏览图片的权限,请 登录注册

打开方式里面有两个记事本,一个是系统自带的,一个是我自己编的,我自己编的打不开,我是想解决这个问题
2014-06-21 16:34
yhlvht
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:36
帖 子:707
专家分:4405
注 册:2011-9-30
收藏
得分:20 
public FrmNote(string[] getSystemFilePath)
{
    InitializeComponent();//敢不敢把这句放这
    if (getSystemFilePath.Length > 1)//调试时命令行参数只有1行,只有当打开系统文件时命令行参数才大于1行
    {
        MessageBox.Show(getSystemFilePath[1]);
        FileStream fs = new FileStream(getSystemFilePath[1], FileMode.Open, FileAccess.ReadWrite, FileShare.ReadWrite);
        MessageBox.Show("a");
        StreamReader sr = new StreamReader(fs);
        MessageBox.Show("b");
        tbContent.Text = sr.ReadToEnd();
        MessageBox.Show("c");
        sr.Close();
        fs.Close();
    }
    //InitializeComponent();
    //ff = new FrmFind();
    //ff.Show(this);
    //ff.Hide();
}
2014-06-22 01:22
快速回复:异常:用自己编写的记事本打开系统文件无法进行读取
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019666 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved