Skip to main content

[Migrated content. Thread originally posted on 16 January 2012]

Hi,

Is there "a clever" .NET way to read a Windows .TXT file thats been created using say "NOTEPAD.EXE"

So my TXT file would contain 30 lines of varying bits of text?

Thanks in advance for any help.

Kind regards

Neil Willby.

[Migrated content. Thread originally posted on 16 January 2012]

Hi,

Is there "a clever" .NET way to read a Windows .TXT file thats been created using say "NOTEPAD.EXE"

So my TXT file would contain 30 lines of varying bits of text?

Thanks in advance for any help.

Kind regards

Neil Willby.
Hi Neil,

If what you mean by "clever" is using the .NET framework then you should look at the System.IO namespace and classes like StreamReader and File.

Example:

      $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.


I personally don't find that to be any more clever or easier than using COBOL I-O statements like:


open input textfile

read textfile
   at end
      display "done"
end-read


but that's just me :-)

[Migrated content. Thread originally posted on 16 January 2012]

Hi,

Is there "a clever" .NET way to read a Windows .TXT file thats been created using say "NOTEPAD.EXE"

So my TXT file would contain 30 lines of varying bits of text?

Thanks in advance for any help.

Kind regards

Neil Willby.
I prefer...


       01 #lines string occurs any.

       set #lines to type System.IO.File::ReadAllLines("debug.txt")