Created On: 16 January 2012
Problem:
How does one read a text file using the .NET Framework classes in Visual COBOL?
Resolution:
You should look at the System.IO namespace and classes like StreamReader and File in order to accomplish the task of reading a text file in a variety of different ways.
Example #1:
Example #1:
$set ilusing"System.IO"
program-id. Program1 as "testreadtext.Program1".
data division.
working-storage section.
01 sr type StreamReader.
01 wsLine string.
01 wsException type Exception.
procedure division.
try
*> Create an instance of StreamReader to read from a file.
set sr to new type StreamReader("testfile.txt")
*> Read and display lines from the file until the end of
*> the file is reached.
perform until exit
set wsLine to sr::ReadLine
if wsLine = null
exit perform *>EOF reached
else
display wsLine
end-if
end-perform
catch wsException
*> Let the user know what went wrong.
display "The file could not be read:"
display wsException::Message
end-try
invoke sr::Close
goback.
Example #2:
01 #lines string occurs any.
set #lines to type System.IO.File::ReadAllLines("debug.txt")
Example #3:
Standard COBOL I-O still works fine.
open input textfile
read textfile
at end
display "done"
end-read
Old KB# 35384