查看: 9337|回复: 5|关注: 0

[已解决] 如何将txt文档读至GUI,并显示在edit框中

[复制链接]

新手

9 麦片

财富积分


050


19

主题

30

帖子

0

最佳答案
想实现的效果:按下按钮,TXT文档内容显示edit中,并能按照TXT的分行格式显示。
以下程序能显示内容,但排版乱,不能实现分行。
function pushbutton1_Callback(hObject, eventdata, handles)
[filename, pathname] = uigetfile('wenben4.txt','File Selector');
wenjian = [pathname filename];
fp =fopen(wenjian);
re = fscanf(fp ,'%s ');
a{1,1}=re;
set(handles.edit1,'string',re)

怎样修改程序?或者有更好的实现方法呢?

1.png
回复主题 已获打赏: 0 积分

举报

MATLAB 基础讨论
版块优秀回答者

入门

188 麦片

财富积分


50500


4

主题

294

帖子

40

最佳答案
  • 关注者: 3
发表于 2016-4-1 15:33:57 | 显示全部楼层 |此回复为最佳答案
[filename, pathname] = uigetfile('*.txt','File Selector');
wenjian = [pathname filename];
fp =fopen(wenjian);
i=1;
while ~feof(fp)
strl{i}=fgetl(fp);
i=i+1;
end
fclose(fp);

set(handles.edit1,'string',strl)
回复此楼 已获打赏: 0 积分

举报

MATLAB 基础讨论
版块优秀回答者

入门

188 麦片

财富积分


50500


4

主题

294

帖子

40

最佳答案
  • 关注者: 3
发表于 2016-4-1 15:34:50 | 显示全部楼层
另外把edit1控件的Max属性设置成一个较大的数,总之要大过你的文件长度
回复此楼 已获打赏: 0 积分

举报

新手

9 麦片

财富积分


050


19

主题

30

帖子

0

最佳答案
 楼主| 发表于 2016-4-1 21:13:27 | 显示全部楼层
liuyuting 发表于 2016-4-1 15:34
另外把edit1控件的Max属性设置成一个较大的数,总之要大过你的文件长度

谢谢,不过效果还是不太好,
回复此楼 已获打赏: 0 积分

举报

MATLAB 基础讨论
版块优秀回答者

入门

188 麦片

财富积分


50500


4

主题

294

帖子

40

最佳答案
  • 关注者: 3
发表于 2016-4-5 11:17:59 | 显示全部楼层
我给你的程序就是按照txt的分行来显示的,程序是按照txt的内容逐行读取的,显示也是逐行显示的。
如果效果不理想,应该是你的txt文档本身的分行效果就是有问题的。
但在你打开txt查看该文件效果却不一样,我想应该是你设置了自动换行,显示效果是按照打开文档界面的大小来分行显示的,所以看起来好很多。

你可以打开文档,然后取消自动换行,看一下效果是不是和程序读取并显示的效果一样。
回复此楼 已获打赏: 0 积分

举报

新手

9 麦片

财富积分


050


19

主题

30

帖子

0

最佳答案
 楼主| 发表于 2016-4-7 16:21:41 | 显示全部楼层
liuyuting 发表于 2016-4-5 11:17
我给你的程序就是按照txt的分行来显示的,程序是按照txt的内容逐行读取的,显示也是逐行显示的。
如果效果 ...

即使把自动换行取消,显示效果还是问题,能帮忙看下,会是什么原因呢?
另外,edit text 可以直接显示图片?如果能的话,要怎样编程呢?

实验显示效果

实验显示效果

记事本打开的显示效果

记事本打开的显示效果
回复此楼 已获打赏: 0 积分

举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /5 下一条

快速回复 返回顶部 返回列表