home *** CD-ROM | disk | FTP | other *** search
/ The CDPD Public Domain Collection for CDTV 4 / CDPD_IV.bin / e / mailinglists / binaries / readstr-study.lha / ReadStr-std-3.e < prev    next >
Text File  |  1993-07-24  |  552b  |  24 lines

  1. MODULE 'dos/dos'
  2.  
  3. PROC readStr (handle, buffer)
  4. /* Differs from E's ReadStr() in that it returns the string's length. */
  5.   DEF bytes, strMax, eoln
  6.   strMax := StrMax (buffer)
  7.   bytes := Read (handle, buffer, strMax)
  8.   eoln := InStr (buffer, '\n', 0)
  9.   IF eoln > -1
  10.     Seek (handle, -(bytes - eoln - 1), OFFSET_CURRENT)
  11.     buffer [eoln] := 0
  12.   ELSE
  13.     buffer [bytes] := 0
  14.     eoln := IF bytes = 0 THEN -1 ELSE bytes
  15.   ENDIF
  16. ENDPROC  eoln
  17.  
  18. PROC main ()
  19.   DEF s [5] : STRING
  20.   WHILE readStr (stdout, s) > -1
  21.     WriteF ('s=\s\n', s)
  22.   ENDWHILE
  23. ENDPROC
  24.