Clear Filters
Clear Filters

export() live scripts not working

4 views (last 30 days)
Phuwanut Pataratawinun
Phuwanut Pataratawinun on 18 Mar 2022
Commented: Walter Roberson on 18 Mar 2022
I tried to use this code to export multiple files in a folder, but it's not working:
Publish() works fine, but not export whose format I want.
clearvars
dirName = 'C:\Users\User\Desktop\NeedToExport\'
addpath(dirName)
files = dir(fullfile(dirName,'*.mlx'))
files = {files.name}'
for i = 1:length(files(:,1))
dirName = 'C:\Users\User\Desktop\NeedToExport\'
% This one is because the scripts have clearvars at the front and
% clears my variables for filenames
files = dir(fullfile(dirName,'*.mlx'))
files = {files.name}'
filename = files{i,1}
% filename = append(dirName,files{i,1})
% filenamepdf = append(filename(1:end-3),'pdf')
filename = convertCharsToStrings(filename)
% filenamepdf = convertCharsToStrings(filenamepdf)
path = export("Test.mlx")
path = export(filename)
end
  2 Comments
Walter Roberson
Walter Roberson on 18 Mar 2022
If you create a new function to do the export() call, and pass the filename into that function, then any clearvars would only affect the workspace of the function, leaving your controlling script alone. You would still have a problem if the scripts contain clear all though.
Phuwanut Pataratawinun
Phuwanut Pataratawinun on 18 Mar 2022
Edited: Phuwanut Pataratawinun on 18 Mar 2022
@Walter Roberson Thank you for the comment, but the main problem is the export() call doesn't work. Could you please tell me what did wrong? Publish() works fine, but it does not give the format that I want.
The tooltip says I need "obj", "rtcId", and "Options". I assume obj is the file name, and options is optional, but I cannot find any information about "rtcId".

Sign in to comment.

Answers (2)

Walter Roberson
Walter Roberson on 18 Mar 2022
files = dir(fullfile(dirName,'*.mlx'))
You use the folder information when you do the dir() but you only extract the name part of the result. You do not add the folder information onto the file name that you pass to export()
  2 Comments
Phuwanut Pataratawinun
Phuwanut Pataratawinun on 18 Mar 2022
I still get "Check for incorrect argument data type or missing argument in call to function 'export'.".
Walter Roberson
Walter Roberson on 18 Mar 2022
What do you get if you ask
which export("test.mlx")

Sign in to comment.


Steven Lord
Steven Lord on 18 Mar 2022
According to the Version History at the end of its documentation page, the export function that will "Convert live script or function to standard format" was "Introduced in R2022a". The release information on the right side of this question indicates you're using release R2021b. You will need to upgrade to release R2022a (or later, if you're reading this after release R2022b is released) to use this function.
  1 Comment
Walter Roberson
Walter Roberson on 18 Mar 2022
Weird, version was one of the things I checked yesterday, and I thought I found it listed as introduced in R2021a...

Sign in to comment.

Categories

Find more on C Shared Library Integration in Help Center and File Exchange

Products


Release

R2021b

Community Treasure Hunt

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

Start Hunting!