Xlsread/xlswrite error: unable to find the specified .xlsx file using a deployed web app

1 view (last 30 days)
Hi all,
I have compiled a web app which reads and writes .xlsx file on the machine that is running the procedure. However, when run from the web, program throws the exception saying that the specified xlsx file is not present. I don't have the same issue when running the app directly from the code (not through the compiled app).
Thank you in advance

Answers (1)

Kojiro Saito
Kojiro Saito on 28 Jul 2018
It is because WebApps creates a work folder when accessed by a user. For example, my WebApps on Windows has created the following temporary folder, C:\Users\MATLABWebAppsGuest\AppData\Local\MathWorks\webapps\services\mdwas\sessions\6f6d3719-a001-4112-9ad5-aae1bba9736f and this is a current folder of WebApps. These temporary folders are different by accesses. You can confirm where is current folder by
pwd
on WebApps.
I think there are two options.
1. Specifying full path of the Excel sheet instead of relative path. For example,
readtable(fullfile('C:', 'full', 'path', 'to', 'your.xlsx'))
2. If your Excel file is constant, i.e, reading the same Excel file, you can add the file to WebApps when compiling by adding "Files required for your app to run".
I hope this helps.
  4 Comments
Giulio Francesca
Giulio Francesca on 30 Jul 2018
xlsread(filepath\filename.xlsx)
I tried with spreadsheet datastore and it seems to work properly... it's like xlsread cannot be used in compiled web app

Sign in to comment.

Categories

Find more on Environment and Settings in Help Center and File Exchange

Products


Release

R2018a

Community Treasure Hunt

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

Start Hunting!