how to save the data of an opened file by uigetfile in the workspace

조회 수: 8 (최근 30일)
imene. B
imene. B 2016년 7월 20일
댓글: imene. B 2016년 7월 21일
hello all,
i want to create a window that would be opened by a pushbutton, to open a file (a txt file) and then to load it to the workspace of matlab, i tried this code, it worked correctly but in the end i found nothing in the workspace, it doesn't save the data
filename = uigetfile('*.txt*', 'All Files (*.txt*)');
filename = uiimport(filename);
thank you.

채택된 답변

Geoff Hayes
Geoff Hayes 2016년 7월 21일
imene - rather than re-using the same variable name for the data that is being imported, try
filename = uigetfile('*.txt*', 'All Files (*.txt*)');
data = uiimport(filename);
Now data is a struct that has the data that you have imported..which is in the workspace of your pushbutton callback. Depending upon how you have developed your GUI, you can either save this data to the handles structure (if using GUIDE) or you can save it to a local variable within your parent function that creates the GUI (assuming that you have nested your callback within that parent).
  댓글 수: 8
imene. B
imene. B 2016년 7월 21일
but how can i do that from within the GUI ? and as shown in the passed comment, i used assignin but it doesn't work too
imene. B
imene. B 2016년 7월 21일
i solved it :)
filename = uigetfile('*.txt*', 'All Files (*.txt*)');
data = load(filename);
(assignin('base','data',data));
the tric is in 'load'
thank you Geoff for your help :)

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Dialog Boxes에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by