importing files automatically callback function error

function importfcn
% wait an extra second to ensure that the file modification is complete
pause(1.0);
% read the data from file
fileToRead = fullfile('C:\Users\wolfgang\Desktop\file1.csv');
circa = xlsread(fileToRead);
kevin=0.5*(circa(:,4)+circa(:,5)).'
assignin('base','kevin',kevin)
% do something with the data
end
fsw = System.IO.FileSystemWatcher();
fsw.Path = 'C:\Users\wolfgang\Desktop';
fsw.Filter = 'file.csv';
fsw.EnableRaisingEvents = true;
listenerhandle = addlistener(fsw, 'Changed', @importfcn);
%signature of importfcn is function importfcn(sender, eventargs)
%add a small delay in importfcn before reading the file as the event is raised
%to make sure that file modification is complete
Then I get the following error: Warning: Error occurred while executing callback: Error using importfcn Too many input arguments.
Warning: Error occurred while executing callback: Error using importfcn Too many input arguments.
When I type in importfcn then everything is ok and the file gets imported as variable kevin.

 採用された回答

Sean de Wolski
Sean de Wolski 2014 年 12 月 10 日

1 投票

addlistener automatically passes along two inputs, source and eventdata.
You can either have your function ignore these or ignore them in the call to addlistener
@(~,~)importfcn
The two ~s deny both inputs and then call importfcn as is.

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeEnvironment and Settings についてさらに検索

質問済み:

AA
2014 年 12 月 10 日

回答済み:

2014 年 12 月 10 日

Community Treasure Hunt

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

Start Hunting!

Translated by