Matlab GUI,显示学生成绩(读取txt,xls文件),打开文件对话框
来源:互联网 发布:便宜域名注册 编辑:程序博客网 时间:2024/06/05 10:31
guide (代码: 1\xuenshengchengji22.m)
% 浏览按钮,打开txt或xls文件-----------------------------------function pushbutton1_Callback(hObject, eventdata, handles)[filename filepath fileindex]=uigetfile({'*.xls','Excel文件(*.xls)';'*.txt','文本文件(*.txt)';'*.*','所有文件(*.*)'},'选择文件'); %打开文件对话框if fileindex~=0 %如果没有点击取消 l=length(filename); %filename包含后缀名 if l<=4 errordlg('错误文件','文件打开错误'); %错误对话框 return; end test=filename(1,l-3:l); %文件名,截取后缀名 switch test case '.xls' %如果是表格文件 str=[filepath filename]; %拼接绝对路径 set(handles.edit2,'String',str); % h=waitbar(0,'正在读取文件....'); %进度条(打开文件比较慢) [chengji xingming]=xlsread(str); %根据绝对路径,打开xls文件。chengji是一个三维列向量,xingming是一个一维列向量。第一个参数chengji只保存纯数字,第二个参数xingming只保存字符串。 waitbar(1,h,'完成'); delete(h); set(handles.listbox1,'String',xingming(:,1)); %设置listbox1的显示内容 handles.chengji=chengji; %将chengji放入到全局变量中 guidata(hObject, handles); %更新gui数据 case '.txt' strfile=[filepath filename]; %拼接绝对路径 set(handles.edit2,'String',strfile); fin=fopen('chengji.txt','r'); %打开txt文件 str=fgetl(fin); %读取txt文件的第一行 % A=fscanf(fin,'%d','HeaderLines',1); 忽略前一行的标题内容 % [A B]=textscanf(fin,'%d %d'); 返回一个cell类型的数据[A B],一列一列的读 % ftell(); 得到读取的位置 [str1 str2 str3 str4]=strread(str,'%s %s %s %s','delimiter',' '); %以空格分割,截取每一行 xingming(1)=str1; counter=2; %txt文件的第一行是(name yuwen shuxue yuwen),所以从第二行才是需要的内容。 while feof(fin)==0 %如果能读到txt文件的内容,(没有到txt文件的结尾) str=fgetl(fin); %读取txt文件的一行内容 [name yuwen shuxue yingyu]=strread(str,'%s %d %d %d','delimiter',' '); xingming(counter)=name; chengji(counter-1,:)=[yuwen shuxue yingyu]; counter=counter+1; end set(handles.listbox1,'String',xingming(1,:)); handles.chengji=chengji; guidata(hObject, handles); fclose(fin); %关闭文件流 otherwise errordlg('文件类型错误','文件错误'); return; end end% listbox选项改变的回调函数-----------------------------------function listbox1_Callback(hObject, eventdata, handles)value=get(hObject,'Value')-1; %value表示选择了listbox的第几项(从1开始)。减1是因为第一行是标题(name yuwen shuxue yuwen)if value>=1set(handles.edit1,'String',num2str(handles.chengji(value,:)));end% 退出按钮-------------------------------------------------function pushbutton2_Callback(hObject, eventdata, handles)clc;clear all;close(gcf);
阅读全文
0 0
- Matlab GUI,显示学生成绩(读取txt,xls文件),打开文件对话框
- matlab读取txt文件(导入学生成绩)
- matlab循环读取文件(xls、txt、dat、mat)】
- Matlab GUI,显示图片,打开文件对话框,单选按钮组
- java 读取txt文件和xls文件
- CfileDialog 文件对话框 mfc打开并读取txt文件
- Matlab GUI,activex控件,播放视频,菜单,打开文件对话框
- 批处理文件打开matlab gui文件
- matlab中读取excel的xls文件
- Matlab批量读取xls文件的总结
- matlab 下 txt文件读取
- matlab 读取txt文件数据
- Matlab读取.txt文件内容
- matlab gui(三)对话框(文件打开/保存对话框,进度条)
- 在线打开.PDF、.TXT等文件,.doc、.xls自动下载
- matlab GUI常用文件操作对话框
- vBS中读取文件 (txt、 xls 、execl)
- Python 读取EXCEL(XLS、CSV)写入txt文件
- Double it 2017ACM-ICPCUniversidadNacionaldeColombiaProgrammingContest/Gym101466D
- error: expected '}' before numeric constant 编译错误解决方案
- NOIP2017赛前模拟(2017.10.19)
- 机器学习产品经理工作流程
- 获取手机中sdCard的权限
- Matlab GUI,显示学生成绩(读取txt,xls文件),打开文件对话框
- DNA Consensus String UVA
- 实验四
- HDU
- 如何在 Ubuntu 上用 Yocto 创建你自己的嵌入式 Linux 发行版
- 多选框
- 3011: [Usaco2012 Dec]Running Away From the Barn
- 将二叉树拆成链表-LintCode
- Periodic Strings UVA