Availability
This routine is available starting with SIL Engine™ 4.0.8.
Syntax
readFromCSVFile(path, hasHeader [, charset])
Package
file
Short Name
readCSV (only when using package)
Description
Reads the values from the CSV file, returning them to an array, of N rows * M columns values.Parameters
Parameter name | Type | Required | Description |
---|---|---|---|
path | string | Yes | Specifies the file name to read from. |
hasHeader | boolean | Yes | Specifies if the file has header. |
charset | string | No | Specifies the charset used to read that file. |
Return type
string []
The values from the file, as a string array.
Example
The basic form will look like this:
string [] fileContent = readFromCSVFile("C:/test.csv", true);
However it is hardly usable. A better form will look like this:
//Suppose we have a CSV file with 3 columns, First Name, Last Name, Age struct Emp { string fName; string lName; number age; } Emp [] fileContent = readFromCSVFile("C:/test.csv", true); for(Emp e in fileContent) { //we can address them now in a better way .... so process row after row string s = e.fName + " " + e.lName + " / " + e.age; //do smth with that 's' }
Unless calendar dates are in formats SIL can understand, dates should be imported as strings and further parsed afterwards in your SIL program.
Notes
- You can use absolute paths and relative paths to "sil.home".
- If the header exist, it must not have duplicated columns, otherwise you need to skip it manually.
- If the file is not found, an error will be raised.
See also