Skip to content

One can write an existing modified internal ADAT (soma_adat R object) to an external file. However the ADAT object itself must have intact attributes, see is_intact_attr().

Usage

write_adat(x, file)

Arguments

x

A soma_adat object (with intact attributes), typically created using read_adat().

file

Character. File path where the object should be written. For example, extensions should be *.adat.

Value

Invisibly returns the input x.

Details

The ADAT specification no longer requires Windows end of line (EOL) characters ("\r\n"). The current EOL spec is "\n" which is commonly used in POSIX systems, like MacOS and Linux. Since the EOL affects the resulting checksum, ADATs written on other systems generate slightly differing files. Standardizing to "\n" attempts to solve this issue. For reference, see the EOL encoding for operating systems below:

SymbolPlatformCharacter
LFLinux"\n"
CRMacOS"\r"
CRLFDOS/Windows"\r\n"

Author

Stu Field

Examples

# trim to 1 sample for speed
adat_out <- head(example_data, 1L)

# attributes must(!) be intact to write
is_intact_attr(adat_out)
#> [1] TRUE

write_adat(adat_out, file = tempfile(fileext = ".adat"))
#>  ADAT passed all checks and traps.
#>  ADAT written to: '/var/folders/n2/pt_35rc53tdgkld9531s2tfh0000gn/T//RtmpyM2ZeA/file166b666f66ed.adat'