How to import text file in GUI and link it with another .m program

3 次查看(过去 30 天)
I just wrote a program on importing text file in GUI, and I am not sure whether it really reads the file
% --- Executes on button press in datum1.
function datum1_Callback(hObject, eventdata, handles)
% hObject handle to datum1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
[filename1 pathname1]=uigetfile({'*.txt'},'File Selector');
datum1=strcat(pathname1, filename1);
set(handles.datum1txt,'String',datum1)
% --- Executes on button press in datum2.
function datum2_Callback(hObject, eventdata, handles)
% hObject handle to datum2 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
[filename2 pathname2]=uigetfile({'*.txt'},'File Selector');
datum2=strcat(pathname2, filename2);
set(handles.datum2txt,'String',datum2)
After that, I want to link this program to a file called geodesycode.m with a push of a button.
  2 个评论
Rik
Rik 2020-5-11
What makes you think it read the file? You are only storing the paths to a file in the String property of two objects.
What is the input of that function? The file names or the contents of those files?

请先登录,再进行评论。

采纳的回答

Mehmed Saad
Mehmed Saad 2020-5-11
编辑:Mehmed Saad 2020-5-11
you have the filename and pathname, build full file name from parts
full_filename1 = fullfile(pathname1,filename1);
Use fopen to open or obtain information about file
fileID = fopen(full_filename1);
select formatspec (currently i am setting it to string)
formatSpec = '%s'; %Read all characters excluding white spaces
Now scan file with your defined formatspec using fscanf
A = fscanf(fileID,formatSpec);
Now add this to you gui handle
set(handles.datum1txt,'String',A)
and donot forget to close the file at the end
fclose(fileID)
Edit: You can also use textscan instead of fscanf
  3 个评论
Lau Jit Sung
Lau Jit Sung 2020-5-11
Hi sir, sorry to bother again what if I wanna include the blank spaces
formatSpec = '%s'; %Read all characters excluding white spaces
is there anything I should do? Thank you
Mehmed Saad
Mehmed Saad 2020-5-11
Use textscan instead of facanf See textscan help You have to provide three inputs 1. File id 2. format spec ('%s') 3. Delimeter

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Text Data Preparation 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by