Operator Reference

fwrite_stringT_fwrite_stringFwriteStringFwriteStringfwrite_string (Operator)

fwrite_stringT_fwrite_stringFwriteStringFwriteStringfwrite_string — Write strings and numbers into a text file.

Signature

fwrite_string( : : FileHandle, String : )

Herror T_fwrite_string(const Htuple FileHandle, const Htuple String)

void FwriteString(const HTuple& FileHandle, const HTuple& String)

void HFile::FwriteString(const HTuple& String) const

void HFile::FwriteString(const HString& String) const

void HFile::FwriteString(const char* String) const

void HFile::FwriteString(const wchar_t* String) const   ( Windows only)

static void HOperatorSet.FwriteString(HTuple fileHandle, HTuple stringVal)

void HFile.FwriteString(HTuple stringVal)

void HFile.FwriteString(string stringVal)

def fwrite_string(file_handle: HHandle, string: MaybeSequence[Union[int, float, str]]) -> None

Description

The operator fwrite_stringfwrite_stringFwriteStringFwriteStringfwrite_string writes one or more strings or numbers to the output file defined by the handle FileHandleFileHandleFileHandlefileHandlefile_handle. The output file must have been opened with open_fileopen_fileOpenFileOpenFileopen_file in text format.

Strings and numbers that are to be written into the file are passed via the input parameter StringStringStringstringValstring to the operator fwrite_stringfwrite_stringFwriteStringFwriteStringfwrite_string. The parameter StringStringStringstringValstring accepts also tuples where strings and numbers are mixed. All elements of the tuple are written consecutively into the file without blanks or other separators in between. Numbers are converted into a string before they are written.

The operator fwrite_stringfwrite_stringFwriteStringFwriteStringfwrite_string emits a low-level error message, when the string cannot be transcoded without loss of information into the specified file encoding. This can only happen when the file encoding is 'locale_encoding'"locale_encoding""locale_encoding""locale_encoding""locale_encoding" and the current encoding of the HALCON library is 'utf8'"utf8""utf8""utf8""utf8" (see set_system(::'filename_encoding','utf8':)set_system("filename_encoding","utf8")SetSystem("filename_encoding","utf8")SetSystem("filename_encoding","utf8")set_system("filename_encoding","utf8")).

The call set_system(::'flush_file', <boolean-value>:)set_system("flush_file", <boolean-value>)SetSystem("flush_file", <boolean-value>)SetSystem("flush_file", <boolean-value>)set_system("flush_file", <boolean-value>) determines whether the output characters are immediately written to the file or not. If the value 'flush_file'"flush_file""flush_file""flush_file""flush_file" is set to 'false'"false""false""false""false", the characters (especially in case of screen output) show up only after the operator fnew_linefnew_lineFnewLineFnewLinefnew_line is called.

Execution Information

  • Multithreading type: reentrant (runs in parallel with non-exclusive operators).
  • Multithreading scope: global (may be called from any thread).
  • Processed without parallelization.

Parameters

FileHandleFileHandleFileHandlefileHandlefile_handle (input_control)  file HFile, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

File handle.

StringStringStringstringValstring (input_control)  string(-array) HTupleMaybeSequence[Union[int, float, str]]HTupleHtuple (string / integer / real) (string / int / long / double) (HString / Hlong / double) (char* / Hlong / double)

Values to be written into the file.

Default: 'hallo' "hallo" "hallo" "hallo" "hallo"

Example (HDevelop)

fwrite_string(FileHandle,['text with numbers:',5,' and ',1.0])
* results in the following output:
* 'text with numbers:5 and 1.00000'

Example (C)

   fwrite_string(FileHandle,"text with numbers: ");
   fwrite_string(FileHandle,"5");
   fwrite_string(FileHandle," and ");
   fwrite_string(FileHandle,"1.0");
/* results in the following output:       */
/*    'text with numbers: 5 and 1.00000'   */

/* Tupel Version */
  int  i;
  double d;
  Htuple Tuple;

  create_tuple(&Tuple,4);
  i = 5;
  d = 10.0;
  set_s(Tuple,"text with numbers: ",0);
  set_i(Tuple,i,1);
  set_s(Tuple," and ",2);
  set_d(Tuple,d,3);
  T_fwrite_string(FileHandle,HilfsTuple);

Example (HDevelop)

fwrite_string(FileHandle,['text with numbers:',5,' and ',1.0])
* results in the following output:
* 'text with numbers:5 and 1.00000'

Example (HDevelop)

fwrite_string(FileHandle,['text with numbers:',5,' and ',1.0])
* results in the following output:
* 'text with numbers:5 and 1.00000'

Result

If the writing procedure was carried out successfully, the operator fwrite_stringfwrite_stringFwriteStringFwriteStringfwrite_string returns the value 2 ( H_MSG_TRUE) . Otherwise, an exception is raised. Encoding errors have no influence on the result state.

Possible Predecessors

open_fileopen_fileOpenFileOpenFileopen_file

Possible Successors

close_fileclose_fileCloseFileCloseFileclose_file

Alternatives

write_stringwrite_stringWriteStringWriteStringwrite_string

See also

open_fileopen_fileOpenFileOpenFileopen_file, close_fileclose_fileCloseFileCloseFileclose_file, set_systemset_systemSetSystemSetSystemset_system

Module

Foundation