IO package: Difference between revisions
Jump to navigation
Jump to search
→xlswrite / odswrite versus xlsopen / odsopen ..... xlsclose / odsclose
Line 36: | Line 36: | ||
* First open the spreadsheet file using xlsopen (for Excel or gnumeric files) or odsopen (.ods or .gnumeric). | * First open the spreadsheet file using xlsopen (for Excel or gnumeric files) or odsopen (.ods or .gnumeric). | ||
'''NOTE''': the output of these functions is a file pointer handle that you should treat carefully! | '''NOTE''': the output of these functions is a file pointer handle that you should treat carefully! | ||
* (for reading data) Read the data using raw_data = xls2oct (fileptr [,sheet#] [,cellrange] [,options]) | * (for reading data) Read the data using raw_data = xls2oct (<fileptr> [,sheet#] [,cellrange] [,options]) | ||
* Next, optionally split the data in numerical, text and raw data and optionally get the limits of where these came from: | * Next, optionally split the data in numerical, text and raw data and optionally get the limits of where these came from: | ||
[num, txt, raw, lims] = parsecell (data, <fileptr.lims>) | [num, txt, raw, lims] = parsecell (data, <fileptr.lims>) | ||
* (for writing data) Write the data using <fileptr> = oct2xls (data, <fileptr> [,sheet#] [,cellrange] [,options]) | * (for writing data) Write the data using <fileptr> = oct2xls (data, <fileptr> [,sheet#] [,cellrange] [,options]) | ||
* When you're finished, DO NOT FORGET to | * When you're finished, DO NOT FORGET to close the file pointer handle: | ||
<fileptr> = xlsclose (<fileptr>)</pre> | <fileptr> = xlsclose (<fileptr>)</pre> | ||
Line 47: | Line 47: | ||
Obviously this is much more flexible (and FASTER) than xlsread and xlswrite. In fact, Octave's io package xlsread is a mere wrapper for an xlsopen-xls2oct-parsecell-xlsclose sequence. Similarly for xlswrite, odsread, and odswrite. | Obviously this is much more flexible (and FASTER) than xlsread and xlswrite. In fact, Octave's io package xlsread is a mere wrapper for an xlsopen-xls2oct-parsecell-xlsclose sequence. Similarly for xlswrite, odsread, and odswrite. | ||
==== .xls ~= .xlsx ==== | ==== .xls ~= .xlsx ==== |