4D v16.3

Document to text

Home

 
4D v16.3
Document to text

Document to text 


 

Document to text ( fileName {; charSet {; breakMode}} ) -> Function result 
Parameter Type   Description
fileName  String in Document name or Pathname to document
charSet  Text, Longint in Name or Number of character set
breakMode  Longint in Processing mode for line breaks
Function result  Text in Text from the document

The Document to text command lets you retrieve the contents of a file directly on disk in a 4D text variable or text field.

In fileName, pass the name or pathname of the file to be read. The file must exist on the disk, otherwise an error is generated. You can pass:

  • just the file name, for example "myFile.txt": in this case, the file must be located next to the structure file of the application.
  • a pathname relative to the structure file of the application, for example "\\docs\\myFile.txt" under Windows or ":docs:myFile.txt" under OS X.
  • an absolute pathname, for example "c:\\app\\docs\\myFile.txt" under Windows or "MacHD:docs:myFile.txt" under OS X.

In charSet, you pass the character set to be used for reading the contents. You can pass a string containing the standard set name (for example “ISO-8859-1” or “UTF-8”) or its MIBEnum ID (longint). For more information about the list of character sets supported by 4D, refer to the description of the CONVERT FROM TEXT command.

If the document contains a Byte Order Mark (BOM), 4D uses the character set that it has set instead of the one specified in charSet (this parameter is then ignored). 

If the document does not contain a BOM and if the charSet parameter is omitted, by default 4D uses the following character sets:

  • under Windows: ANSI
  • under OS X: MacRoman

In breakMode, you can pass a longint indicating the processing to apply to end-of-line characters in the document. You can pass one of the following constants, found in the "System Documents" theme:

Constant Type Value Comment
Document unchanged Longint 0 No processing
Document with CR Longint 3 Line breaks are converted to OS X format: CR (carriage return)
Document with CRLF Longint 2 Line breaks are converted to Windows format: CRLF (carriage return + line feed)
Document with LF Longint 4 Line breaks are converted to Unix format: LF (line feed)
Document with native format Longint 1 (Default) Line breaks are converted to the native format of the operating system: CR (carriage return) under OS X, CRLF (carriage return + line feed) under Windows

By default, when you omit the breakMode parameter, line breaks are processed in native mode (1).

Note: This command does not modify the OK variable. In case of failure, an error is generated that you can intercept using a method installed by the ON ERR CALL command.

Example  

Given the following text document (fields are separated by tabs):

id    name    price    vat
3    4D Tags    99    19.6

When you execute this code:

 $Text:=Document to text("products.txt")

... you get:

  // $Text = "id\tname\tprice\tvat\r\n3\t4D Tags\t99 \t19.6"
  // \t = tab
  // \r = CR



See also 

System Documents
TEXT TO DOCUMENT

 
PROPERTIES 

Product: 4D
Theme: System Documents
Number: 1236

This command can be run in preemptive processes

 
HISTORY 

Created: 4D v14

 
ARTICLE USAGE

4D Language Reference ( 4D v16)
4D Language Reference ( 4D v16.1)
4D Language Reference ( 4D v16.2)
4D Language Reference ( 4D v16.3)