mzXMLread fails and tells me a 'Java exception occured'

조회 수: 1 (최근 30일)
Luuk van Oosten
Luuk van Oosten 2014년 11월 4일
댓글: Titus Edelhofer 2014년 11월 6일
Dear reader,
My data aquired by the mass spectrometer (in *.raw format), is converted by some program (called ReAdW, available there) to make a *.mzXML file. I've been importing these mzXML files into MATLAB for some time now using the bioinformatics toolbox. What I do is the following:
mzxml_struct = mzxmlread('mydatafile.mzxml');
That has yielded me a few hundred mzxml_structs in MATLAB on which I could calculate a lot. Used this for months, even used different methods and settings on the mass spectrometer and it never failed (both ReAdW and MATLAB). But today MATLAB did not work anymore. I must admit that I used some other settings on the mass spectrometer, but since I changed settings before I don't think the problem lies there. I got the following:
Error using mzxmlread/parseScan (line 551)
Java exception occurred:
java.lang.ArrayIndexOutOfBoundsException: -1
at org.apache.commons.codec.binary.Base64.isBase64(Base64.java:137)
at org.apache.commons.codec.binary.Base64.discardNonBase64(Base64.java:478)
at org.apache.commons.codec.binary.Base64.decodeBase64(Base64.java:374)
at org.apache.commons.codec.binary.Base64.decode(Base64.java:220)
Error in mzxmlread (line 420)
parseScan;
Error in my_mzXML_script (line 14)
mzxml_struct = mzxmlread('mydatafile.mzxml');
I do understand that somewhere Matlab is trying to access a certain array, but that that array does not exist or that that array contains stuff that does not belong there which it cannot use in the mzxmlread('data.mzxml') function. However, I am not able to solve this problem.
Some stuff I tried, but did not work
-turning it off and on again
-allocate more heap space to Java
-update Java
-checked if my version of the ReAdW program was old enough for MATLAB (it was)
- Unplug my external monitor from my laptop
- Use previously aquired data and run the script; this still works
I'm currently using the following version of MATLAB (if it is any help to you):
MATLAB Version: 8.3.0.532 (R2014a)
MATLAB License Number: my licence number
Operating System: Microsoft Windows 8 Version 6.2 (Build 9200)
Java Version: Java 1.7.0_11-b21 with Oracle Corporation Java HotSpot(TM) 64-Bit Server VM mixed mode
With all the fancy extra toolboxes you can think of.
If you have any idea how to solve this problem, I would be very grateful.

채택된 답변

Titus Edelhofer
Titus Edelhofer 2014년 11월 5일
Hi,
I would suggest to contact MathWorks technical support. They should be able to find out, if there is something wrong with the mzxmlread function or if there is some problem with your file.
Titus

추가 답변 (1개)

Luuk van Oosten
Luuk van Oosten 2014년 11월 5일
Thank you for your answer Titus.
Seems that some malware corrupted the file. It works fine again. I feel stupid.
  댓글 수: 1
Titus Edelhofer
Titus Edelhofer 2014년 11월 6일
No worries, you shouldn't. I have an algorithm working on a large data file, everything fine until about 70% of the file processed. Then it failed. To make the long story short: copying the file from one location to another must have corrupted it ;-).

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

카테고리

Help CenterFile Exchange에서 Environment and Settings에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by