<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<div dir="auto" style="direction: ltr; margin: 0; padding: 0; font-family: sans-serif; font-size: 11pt; color: black; ">
In answer to your second question: <br>
<br>
</div>
<div dir="auto" style="direction: ltr; margin: 0; padding: 0; font-family: sans-serif; font-size: 11pt; color: black; ">
Loading and saving as a text file is only guaranteed, per the current C spec, to round-trip it if it contains only printing characters, native line breaks, horizontal tabs, and spaces which are not immediately followed by line breaks.
<br>
<br>
</div>
<div dir="auto" style="direction: ltr; margin: 0; padding: 0; font-family: sans-serif; font-size: 11pt; color: black; ">
Some editors will round trip, some might truncate at a NUL (e.g. leafpad) and/or ^Z when loading, some will corrupt it by newline conversion (e.g. reading both CRLF and LF as LF), and so forth.
<br>
<br>
</div>
<div dir="auto" style="direction: ltr; margin: 0; padding: 0; font-family: sans-serif; font-size: 11pt; color: black; ">
(※ ^Z is normally SUB, but DOS encodings by their IBM/ICU mappings pivot FS–SUB–DEL for some reason, so it arguably counts as FS here…)
<br>
<br>
</div>
<div dir="auto" style="direction: ltr; margin: 0; padding: 0; font-family: sans-serif; font-size: 11pt; color: black; ">
So if you intend to preserve the binary data, loading it as text is not advised. (It may also confound encoding detection, or throw an error in a strict-mode UTF-8 reader, et cetera, and as such potentially complicate the ability to read non-ASCII text, depending
 on the details of your case.) <br>
<br>
</div>
<div dir="auto" style="direction: ltr; margin: 0; padding: 0; font-family: sans-serif; font-size: 11pt; color: black; ">
And yes, a binary file can contain text file segments while still being a binary file, but not the other way around (a tar archive is always a binary file, and most ar archives are also, but an ar (.a) archive of only UTF-8 text files is itself arguably a UTF-8
 text file—though it usually isn't treated as such since this would only work in that special case, while treating ar as a binary format like tar works always).
<br>
<br>
</div>
<div dir="auto" style="direction: ltr; margin: 0; padding: 0; font-family: sans-serif; font-size: 11pt; color: black; ">
--Har. <br>
<br>
</div>
<div dir="auto" style="direction: ltr; margin: 0; padding: 0; font-family: sans-serif; font-size: 11pt; color: black; ">
<span id="OutlookSignature">
<div dir="auto" style="direction: ltr; margin: 0; padding: 0; font-family: sans-serif; font-size: 11pt; color: black; ">
Get <a href="https://aka.ms/ghei36">Outlook for Android</a></div>
</span><br>
</div>
<hr style="display:inline-block;width:98%" tabindex="-1">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" style="font-size:11pt" color="#000000"><b>From:</b> Unicode <unicode-bounces@unicode.org> on behalf of Roger L Costello via Unicode <unicode@unicode.org><br>
<b>Sent:</b> Monday, September 14, 2020 8:46:07 PM<br>
<b>To:</b> Unicode Discussion <unicode@unicode.org><br>
<b>Subject:</b> A file contains text data and binary data ... Is it a text file or a binary file?</font>
<div> </div>
</div>
<div class="BodyFragment"><font size="2"><span style="font-size:11pt;">
<div class="PlainText">Hi Folks,<br>
<br>
A file contains a long series of text data and at the end is binary data. The binary data is not encoded as base64 text or anything like that. It is raw, unfiltered, unencoded binary data.<br>
<br>
Is it a text file or a binary file?<br>
<br>
A colleague argues that it may be legitimately treated as a text file. After all, it can be opened in a text editor. The text editor might display odd-looking characters such as this:<br>
<br>
ÿª¼ T<br>
<br>
But that is harmless.<br>
<br>
Is there a practical, real-world problem with treating it as a text file?<br>
<br>
/Roger<br>
<br>
<br>
</div>
</span></font></div>
</body>
</html>