If you like, I wrote an article that demonstrates reading a pipe-delimited IFS file. You can read it here (requires a ProVIP membership to System iNetwork)
http://systeminetwork.com/article/easy-and-efficient-way-read-text-files-ifs

However, even if you don't have a ProVIP membership, you should (I think?) be able to grab the sample code from the following link:
http://www.pentontech.com/IBMContent/Documents/article/53867_157_PipeDelim.zip

Pipe-delimited files are very similar to CSV, except that they use a pipe instead of a comma to delimit the fields. So changing it to use a comma instead of a pipe should be pretty trivial.

However, sometimes folks use quotes in a CSV file in order to make it possible to insert commas in the middle of data. For example:

98730,"IT","Klement, Scott C"

in this example, the 3rd field contains my name, and is one field containing last, first and initial. If you just scanned for a comma, it'd try to read "Klement as a separate field from Scott C" which would be wrong...

one of the reasons people use pipe or tab delimiters instead of commas is to prevent issues like that -- with pipe or tab, you can usually just search for the straight delimiters. With comma, you usually have to take quotes into account, because commas are too commonly used as part of field values.

So you might have to add extra code to deal properly with quotes. Personally, I'm more inclined to change the app to stop using using CSV -- which is a horrible format -- and use pipe or tab instead. But if you really need CSV, you can write code to handle it properly if you have to :)


Jeff Young wrote:
I have a text file in CSV format that I would need to load to a System i file.
Although I can use iSeries Access file transfer, I would prefer to do this in a program as I do not want all fields.
Some of the fields in the CSV file are NULL, so unless I change my file, I can not use theCPYFRMIMPF command.
I am comfortable using the System API's to create files on the IFS, but have not had to read them.
What things do I need to be aware of when reading a CSV file?
How do I tell when a field ends?
How do I tell when a record ends?
How do I test the data in the PC field for NULL?

As an Amazon Associate we earn from qualifying purchases.

This thread ...

Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.