怎样按行获取txt文件内容然后显示到list控件中,然后选中list里面的内容可以按行删除并保存
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎样按行获取txt文件内容然后显示到list控件中,然后选中list里面的内容可以按行删除并保存相关的知识,希望对你有一定的参考价值。
怎样按行获取txt文件内容然后按行显示到list控件中呢?
不知道怎么做,用CFile?fstream?具体怎么做呢?请大大指点。
CStdioFile fFileIn,fFileOut; //文件
CString sPathIn,sPathOut; //文件路径
CString sLine; //读到得行字串
//添加控件成员变量
CListBox m_list; //注意在ListBox的Style选项卡里(1)将【选择】改为多个,这样可以通过按下ctrl键多选操作行 (2)将【分类】前面的勾去掉
//读文件部分
sPathIn,sPathIn="d:\\in.txt"; //输入文件路径
fFileIn.Open(sPathIn,CFile::modeRead); //打开文件
m_list.ResetContent(); //如需要清空列表
while(fFileIn.ReadString(sLine)) //读行
m_list.AddString(sLine); //逐行填列表
fFileIn.Close(); //关文件
//删除行部分
int count; //记录选中的列表行数目
int i; //表示要删除的列表行号
int j; //表示已删除列表的行数目
CString str,allStr;
BOOL temp_count=FALSE;
count=m_list.GetSelCount(); //获得列表选中多少行
if(LB_ERR==count)return; //无行选中则跳出
int* buffer=new int[count]; //建立动态数组
m_list.GetSelItems(count,buffer); //将所选中列表行号存入数组
j=0;
for(i=0;i<count;i++)
m_list.DeleteString(buffer[i]-j); //buffer[i]-j为要删除行号的当前值,因为每删除一行,原行号会变动)
j++;
//写文件部分
sPathOut="d:\\out.txt"; //输出文件路径
fFileOut.Open(sPathOut,CFile::modeCreate|CFile::modeWrite); //打开写入文件
int i; //临时变量i用于索引列表行
for (i=0;i<m_list.GetCount();i++)
m_list.GetText(i,sLine); //读列表行字串
sLine+="\n"; //添加换行符
fFileOut.WriteString(sLine); //逐行写入文件
fFileOut.Close(); //关闭文件
vc6下通过 参考技术A #include <string>
#include <fstream>
using namespace std;
ifstream in("file.txt",ios::in);
string line; CString str;
while(getline(in,line,'\n')) str=CString(line.c_str());
next see you . 参考技术B 使用getline 函数 给你个链接 看一下就明白 了
参考资料:http://baike.baidu.com/view/3127321.htm
Winform怎样读取文本文件,并显示到datagridview
лл..
参考技术A 读取文本文件,用streamReader。具体使用方法请百度。读取文件后,要根据你的需求建立数据结构,储存自己需要的数据。 至于显示到datagridView上,可以直接为其制定数据源(如:上面建立的数据结构) 参考技术B 将文本内容读取到Map中将Map添加到List集合中再将集合作为dgv的DataSource绑定,然后调用DataBind方法即可 参考技术C FileStream fs = File.Open("文件名.扩展名", FileMode.OpenOrCreate,FileAccess.Read);byte[] bt=new byte[fs.Length];
fs.Read(bt, 0, bt.Length);
string text = Encoding.Default.GetString(bt);
fs.Close();datagridview1.Rows.Add();datagridview1.Rows[0].Cells[0].value=text;
以上是关于怎样按行获取txt文件内容然后显示到list控件中,然后选中list里面的内容可以按行删除并保存的主要内容,如果未能解决你的问题,请参考以下文章
java按行读取txt文件并与数据库表中的内容进行匹配处理(问题好像比较复杂哈)