A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© ↖落葉下♀媃媚 中级黑马   /  2013-5-14 11:24  /  1875 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 ↖落葉下♀媃媚 于 2013-5-15 19:15 编辑

OpenFileDialog ofd = new OpenFileDialog();
            ofd.Filter = "文本文件|*.txt";
            if(ofd.ShowDialog()!=true)
            {
                return;
            }
            string filename = ofd.FileName;
            //File.ReadAllLines()是把文件一次读取到string集合中
            IEnumerable<string> lines = File.ReadLines(filename);
            foreach(string line in lines)
            {//把"小红|16"按照|分割
                string str = line.Split('|');
                string name = str[0];
                string age=str[1];
红色部分出现问题问什么不能隐式转换为string,按说应该可以的?出错在哪了呢?

评分

参与人数 1技术分 +1 收起 理由
苏波 + 1

查看全部评分

5 个回复

倒序浏览
本帖最后由 fjl_fight 于 2013-5-14 12:13 编辑

                string str = line.Split('|');
                string name = str[0];
                string age=str[1];

改成 string str = line.Split("\\|"); //按|拆分需要转义
回复 使用道具 举报
line.Split("|")   这个方法返回一个string数组,我看你是string 变量,是不是粗心少写了一个string[] str 呢

评分

参与人数 1技术分 +1 收起 理由
苏波 + 1

查看全部评分

回复 使用道具 举报
split('|')返回的数据类型是字符窜数组 string[],你定义了一个string str 变量来接收split('|')返回的结果,在这里就出错了 ,你应该定义一个字符串数组来接收返回的结果:
string[] str = new string[2];
str = line.split('|');

评分

参与人数 1技术分 +1 收起 理由
苏波 + 1

查看全部评分

回复 使用道具 举报
淡蓝色 发表于 2013-5-14 13:26
line.Split("|")   这个方法返回一个string数组,我看你是string 变量,是不是粗心少写了一个string[] str  ...

嗯哪,太粗心了,谢谢
回复 使用道具 举报
↖落葉下♀媃媚 发表于 2013-5-14 14:51
嗯哪,太粗心了,谢谢

呵呵,不客气
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马