Автоматически генерировать имя переменной и сохранять в файл в Matlab - PullRequest
2 голосов
/ 24 октября 2011

У меня есть приложение Matlab, которое генерирует выходную матрицу на основе пользовательского ввода.Я хочу сохранить его в файл или файлы.Я имею в виду два способа:

Несколько файлов;одна матрица на файл

user1.mat
user2.mat
....

Один файл allUser.mat с несколькими матрицами

user1=[data1]
user1=[data2]
....

Однако я не знаю, как отслеживать число, потому что каждый пользователь запускаетновый экземпляр приложения.Есть идеи как это сделать?

1 Ответ

3 голосов
/ 25 октября 2011

Один из способов - просто отредактировать (или создать, если его там еще нет) файл startup.m, чтобы запросить у пользователя его идентификатор пользователя, а затем использовать его для загрузки правильного файла:

user_id = input("Enter your user id: ");
load(sprintf('user%i.mat', user_id));

Другой способ - использовать функцию unix whoami, если каждый пользователь использует свой собственный вход в систему:

[s,w]=unix('whoami');  %# w = eykanal
load(sprintf('%s_data.mat', w));
...