<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>https://docs.kb-agava.ru/index.php?action=history&amp;feed=atom&amp;title=%D0%9A%D0%BB%D0%B0%D1%81%D1%81_file</id>
	<title>Класс file - История изменений</title>
	<link rel="self" type="application/atom+xml" href="https://docs.kb-agava.ru/index.php?action=history&amp;feed=atom&amp;title=%D0%9A%D0%BB%D0%B0%D1%81%D1%81_file"/>
	<link rel="alternate" type="text/html" href="https://docs.kb-agava.ru/index.php?title=%D0%9A%D0%BB%D0%B0%D1%81%D1%81_file&amp;action=history"/>
	<updated>2026-04-28T13:28:41Z</updated>
	<subtitle>История изменений этой страницы в вики</subtitle>
	<generator>MediaWiki 1.35.1</generator>
	<entry>
		<id>https://docs.kb-agava.ru/index.php?title=%D0%9A%D0%BB%D0%B0%D1%81%D1%81_file&amp;diff=3500&amp;oldid=prev</id>
		<title>TaushkanovKV в 06:35, 27 апреля 2026</title>
		<link rel="alternate" type="text/html" href="https://docs.kb-agava.ru/index.php?title=%D0%9A%D0%BB%D0%B0%D1%81%D1%81_file&amp;diff=3500&amp;oldid=prev"/>
		<updated>2026-04-27T06:35:00Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left diff-editfont-monospace&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Версия 06:35, 27 апреля 2026&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot; &gt;Строка 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Класс предоставляет интерфейс для работы с файлами: открытие, закрытие, чтение и запись данных различных типов, позиционирование внутри файла. Поддерживает как текстовый, так и бинарный режимы работы.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Класс предоставляет интерфейс для работы с файлами: открытие, закрытие, чтение и запись данных различных типов, позиционирование внутри файла. Поддерживает как текстовый, так и бинарный режимы работы.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Класс доступен начиная с версии &amp;lt;code&amp;gt;AS 1.4.5&amp;lt;/code&amp;gt;.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Свойства ==&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Свойства ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key wiki_mw:diff::1.12:old-3498:rev-3500 --&gt;
&lt;/table&gt;</summary>
		<author><name>TaushkanovKV</name></author>
	</entry>
	<entry>
		<id>https://docs.kb-agava.ru/index.php?title=%D0%9A%D0%BB%D0%B0%D1%81%D1%81_file&amp;diff=3498&amp;oldid=prev</id>
		<title>TaushkanovKV в 06:29, 27 апреля 2026</title>
		<link rel="alternate" type="text/html" href="https://docs.kb-agava.ru/index.php?title=%D0%9A%D0%BB%D0%B0%D1%81%D1%81_file&amp;diff=3498&amp;oldid=prev"/>
		<updated>2026-04-27T06:29:43Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left diff-editfont-monospace&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Версия 06:29, 27 апреля 2026&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l353&quot; &gt;Строка 353:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 353:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  f3.open(&amp;quot;network_data.bin&amp;quot;, &amp;quot;r&amp;quot;);&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  f3.open(&amp;quot;network_data.bin&amp;quot;, &amp;quot;r&amp;quot;);&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  uint64 value = f3.readUInt(4); // Читает 4 байта как Big-endian&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  uint64 value = f3.readUInt(4); // Читает 4 байта как Big-endian&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[Категория:AgavaSCADA/AgavaPLC]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key wiki_mw:diff::1.12:old-3497:rev-3498 --&gt;
&lt;/table&gt;</summary>
		<author><name>TaushkanovKV</name></author>
	</entry>
	<entry>
		<id>https://docs.kb-agava.ru/index.php?title=%D0%9A%D0%BB%D0%B0%D1%81%D1%81_file&amp;diff=3497&amp;oldid=prev</id>
		<title>TaushkanovKV: Новая страница: «Класс предоставляет интерфейс для работы с файлами: открытие, закрытие, чтение и запись...»</title>
		<link rel="alternate" type="text/html" href="https://docs.kb-agava.ru/index.php?title=%D0%9A%D0%BB%D0%B0%D1%81%D1%81_file&amp;diff=3497&amp;oldid=prev"/>
		<updated>2026-04-27T06:29:01Z</updated>

		<summary type="html">&lt;p&gt;Новая страница: «Класс предоставляет интерфейс для работы с файлами: открытие, закрытие, чтение и запись...»&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Класс предоставляет интерфейс для работы с файлами: открытие, закрытие, чтение и запись данных различных типов, позиционирование внутри файла. Поддерживает как текстовый, так и бинарный режимы работы.&lt;br /&gt;
&lt;br /&gt;
== Свойства ==&lt;br /&gt;
 '''bool mostSignificantByteFirst'''&lt;br /&gt;
'''Назначение:''' Определяет порядок байтов (endianness) при чтении и записи числовых значений.&lt;br /&gt;
&lt;br /&gt;
'''Аргументы:''' Отсутствуют.&lt;br /&gt;
&lt;br /&gt;
'''Возвращаемое значение:''' Отсутствует (свойство).&lt;br /&gt;
&lt;br /&gt;
'''Примечания:'''&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;true&amp;lt;/code&amp;gt; – используется порядок '''Big-endian''' (старший байт первый).&lt;br /&gt;
* &amp;lt;code&amp;gt;false&amp;lt;/code&amp;gt; (по умолчанию) – используется порядок '''Little-endian''' (младший байт первый).&lt;br /&gt;
* Влияет на методы &amp;lt;code&amp;gt;readInt&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;readUInt&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;readFloat&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;readDouble&amp;lt;/code&amp;gt; и соответствующие методы записи.&lt;br /&gt;
* Может изменяться в любой момент до выполнения операций чтения/записи.&lt;br /&gt;
&lt;br /&gt;
== Методы ==&lt;br /&gt;
 '''int open(const string &amp;amp;in filename, const string &amp;amp;in mode)'''&lt;br /&gt;
'''Назначение:''' Открывает файл для чтения и/или записи.&lt;br /&gt;
&lt;br /&gt;
'''Аргументы:'''&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;filename&amp;lt;/code&amp;gt; – путь к файлу (относительный или абсолютный).&lt;br /&gt;
* &amp;lt;code&amp;gt;mode&amp;lt;/code&amp;gt; – режим открытия файла:&lt;br /&gt;
** &amp;lt;code&amp;gt;&amp;quot;r&amp;quot;&amp;lt;/code&amp;gt; – открыть для чтения (только чтение).&lt;br /&gt;
** &amp;lt;code&amp;gt;&amp;quot;w&amp;quot;&amp;lt;/code&amp;gt; – открыть для записи (создаёт новый или перезаписывает существующий).&lt;br /&gt;
** &amp;lt;code&amp;gt;&amp;quot;a&amp;quot;&amp;lt;/code&amp;gt; – открыть для добавления (запись в конец файла).&lt;br /&gt;
&lt;br /&gt;
'''Возвращаемое значение:'''&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;0&amp;lt;/code&amp;gt; – файл успешно открыт.&lt;br /&gt;
* &amp;lt;code&amp;gt;-1&amp;lt;/code&amp;gt; – ошибка открытия (файл не существует, недостаточно прав, неверный режим).&lt;br /&gt;
&lt;br /&gt;
'''Примечания:'''&lt;br /&gt;
&lt;br /&gt;
* Перед открытием нового файла автоматически закрывает ранее открытый.&lt;br /&gt;
* На Windows автоматически добавляет флаг &amp;lt;code&amp;gt;&amp;quot;b&amp;quot;&amp;lt;/code&amp;gt; (бинарный режим) для предотвращения преобразования &amp;lt;code&amp;gt;\r\n&amp;lt;/code&amp;gt; в &amp;lt;code&amp;gt;\n&amp;lt;/code&amp;gt;.&lt;br /&gt;
* На Windows CE пути преобразуются в абсолютные относительно директории приложения.&lt;br /&gt;
* Если режим не поддерживается (например, запись при &amp;lt;code&amp;gt;AS_WRITE_OPS == 0&amp;lt;/code&amp;gt;), возвращает &amp;lt;code&amp;gt;-1&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
 '''int close()'''&lt;br /&gt;
'''Назначение:''' Закрывает открытый файл.&lt;br /&gt;
&lt;br /&gt;
'''Аргументы:''' Отсутствуют.&lt;br /&gt;
&lt;br /&gt;
'''Возвращаемое значение:'''&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;0&amp;lt;/code&amp;gt; – файл успешно закрыт.&lt;br /&gt;
* &amp;lt;code&amp;gt;-1&amp;lt;/code&amp;gt; – файл уже был закрыт или не открыт.&lt;br /&gt;
&lt;br /&gt;
'''Примечания:'''&lt;br /&gt;
&lt;br /&gt;
* Автоматически вызывается в деструкторе объекта.&lt;br /&gt;
* После закрытия файла дальнейшие операции чтения/записи будут возвращать ошибки.&lt;br /&gt;
&lt;br /&gt;
 '''int getSize() const'''&lt;br /&gt;
'''Назначение:''' Возвращает размер файла в байтах.&lt;br /&gt;
&lt;br /&gt;
'''Аргументы:''' Отсутствуют.&lt;br /&gt;
&lt;br /&gt;
'''Возвращаемое значение:'''&lt;br /&gt;
&lt;br /&gt;
* Размер файла в байтах (тип &amp;lt;code&amp;gt;int&amp;lt;/code&amp;gt;).&lt;br /&gt;
* &amp;lt;code&amp;gt;-1&amp;lt;/code&amp;gt; – файл не открыт или произошла ошибка.&lt;br /&gt;
&lt;br /&gt;
'''Примечания:'''&lt;br /&gt;
&lt;br /&gt;
* Для определения размера сохраняет текущую позицию, перемещается в конец файла и возвращается обратно.&lt;br /&gt;
&lt;br /&gt;
 '''bool isEndOfFile() const'''&lt;br /&gt;
'''Назначение:''' Проверяет, достигнут ли конец файла.&lt;br /&gt;
&lt;br /&gt;
'''Аргументы:''' Отсутствуют.&lt;br /&gt;
&lt;br /&gt;
'''Возвращаемое значение:'''&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;true&amp;lt;/code&amp;gt; – достигнут конец файла или файл не открыт.&lt;br /&gt;
* &amp;lt;code&amp;gt;false&amp;lt;/code&amp;gt; – не достигнут конец файла.&lt;br /&gt;
&lt;br /&gt;
'''Примечания:'''&lt;br /&gt;
&lt;br /&gt;
* Использует стандартную функцию &amp;lt;code&amp;gt;feof()&amp;lt;/code&amp;gt;.&lt;br /&gt;
* Возвращает &amp;lt;code&amp;gt;true&amp;lt;/code&amp;gt;, если файл не открыт.&lt;br /&gt;
&lt;br /&gt;
 '''int getPos() const'''&lt;br /&gt;
'''Назначение:''' Возвращает текущую позицию в файле.&lt;br /&gt;
&lt;br /&gt;
'''Аргументы:''' Отсутствуют.&lt;br /&gt;
&lt;br /&gt;
'''Возвращаемое значение:'''&lt;br /&gt;
&lt;br /&gt;
* Текущая позиция в байтах от начала файла.&lt;br /&gt;
* &amp;lt;code&amp;gt;-1&amp;lt;/code&amp;gt; – файл не открыт или произошла ошибка.&lt;br /&gt;
&lt;br /&gt;
'''Примечания:'''&lt;br /&gt;
&lt;br /&gt;
* Использует функцию &amp;lt;code&amp;gt;ftell()&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
 '''int setPos(int pos)'''&lt;br /&gt;
'''Назначение:''' Устанавливает текущую позицию в файле от начала.&lt;br /&gt;
&lt;br /&gt;
'''Аргументы:'''&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;pos&amp;lt;/code&amp;gt; – абсолютная позиция в байтах от начала файла.&lt;br /&gt;
&lt;br /&gt;
'''Возвращаемое значение:'''&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;0&amp;lt;/code&amp;gt; – позиция успешно установлена.&lt;br /&gt;
* &amp;lt;code&amp;gt;-1&amp;lt;/code&amp;gt; – файл не открыт или позиция вне допустимого диапазона.&lt;br /&gt;
&lt;br /&gt;
'''Примечания:'''&lt;br /&gt;
&lt;br /&gt;
* Использует функцию &amp;lt;code&amp;gt;fseek(SEEK_SET)&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
 '''int movePos(int delta)'''&lt;br /&gt;
'''Назначение:''' Смещает текущую позицию в файле относительно текущего положения.&lt;br /&gt;
&lt;br /&gt;
'''Аргументы:'''&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;delta&amp;lt;/code&amp;gt; – смещение в байтах (положительное – вперёд, отрицательное – назад).&lt;br /&gt;
&lt;br /&gt;
'''Возвращаемое значение:'''&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;0&amp;lt;/code&amp;gt; – позиция успешно изменена.&lt;br /&gt;
* &amp;lt;code&amp;gt;-1&amp;lt;/code&amp;gt; – файл не открыт или смещение выходит за границы.&lt;br /&gt;
&lt;br /&gt;
'''Примечания:'''&lt;br /&gt;
&lt;br /&gt;
* Использует функцию &amp;lt;code&amp;gt;fseek(SEEK_CUR)&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
 '''string readString(uint length)'''&lt;br /&gt;
'''Назначение:''' Читает указанное количество символов из файла.&lt;br /&gt;
&lt;br /&gt;
'''Аргументы:'''&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;length&amp;lt;/code&amp;gt; – количество символов (байт) для чтения.&lt;br /&gt;
&lt;br /&gt;
'''Возвращаемое значение:'''&lt;br /&gt;
&lt;br /&gt;
* Строка с прочитанными данными (реальная длина может быть меньше &amp;lt;code&amp;gt;length&amp;lt;/code&amp;gt;, если достигнут конец файла).&lt;br /&gt;
* Пустая строка – если файл не открыт.&lt;br /&gt;
&lt;br /&gt;
'''Примечания:'''&lt;br /&gt;
&lt;br /&gt;
* Возвращает все прочитанные байты как есть (включая нулевые символы).&lt;br /&gt;
* Размер результирующей строки соответствует количеству реально прочитанных байт.&lt;br /&gt;
&lt;br /&gt;
 '''string readLine()'''&lt;br /&gt;
'''Назначение:''' Читает одну строку из файла.&lt;br /&gt;
&lt;br /&gt;
'''Аргументы:''' Отсутствуют.&lt;br /&gt;
&lt;br /&gt;
'''Возвращаемое значение:'''&lt;br /&gt;
&lt;br /&gt;
* Строка, содержащая прочитанную строку (без символа &amp;lt;code&amp;gt;\n&amp;lt;/code&amp;gt;).&lt;br /&gt;
* Пустая строка – если достигнут конец файла или файл не открыт.&lt;br /&gt;
&lt;br /&gt;
'''Примечания:'''&lt;br /&gt;
&lt;br /&gt;
* Читает до символа перевода строки (&amp;lt;code&amp;gt;\n&amp;lt;/code&amp;gt;) или до заполнения внутреннего буфера (255 символов).&lt;br /&gt;
* Поддерживает чтение длинных строк – операция повторяется до обнаружения &amp;lt;code&amp;gt;\n&amp;lt;/code&amp;gt; или конца файла.&lt;br /&gt;
* Символ &amp;lt;code&amp;gt;\n&amp;lt;/code&amp;gt; не включается в результат.&lt;br /&gt;
&lt;br /&gt;
 '''int64 readInt(uint bytes)'''&lt;br /&gt;
'''Назначение:''' Читает знаковое целое число из файла.&lt;br /&gt;
&lt;br /&gt;
'''Аргументы:'''&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;bytes&amp;lt;/code&amp;gt; – количество байт для чтения (1–8). Если &amp;lt;code&amp;gt;bytes &amp;gt; 8&amp;lt;/code&amp;gt;, используется 8.&lt;br /&gt;
&lt;br /&gt;
'''Возвращаемое значение:'''&lt;br /&gt;
&lt;br /&gt;
* Прочитанное целое число (тип &amp;lt;code&amp;gt;int64&amp;lt;/code&amp;gt;).&lt;br /&gt;
* &amp;lt;code&amp;gt;0&amp;lt;/code&amp;gt; – если файл не открыт или достигнут конец файла.&lt;br /&gt;
&lt;br /&gt;
'''Примечания:'''&lt;br /&gt;
&lt;br /&gt;
* Поддерживает автоматическое расширение знака (sign extension) для отрицательных чисел.&lt;br /&gt;
* Порядок байт определяется свойством &amp;lt;code&amp;gt;mostSignificantByteFirst&amp;lt;/code&amp;gt;.&lt;br /&gt;
* Младшие байты заполняются нулями, если &amp;lt;code&amp;gt;bytes &amp;lt; 8&amp;lt;/code&amp;gt;.&lt;br /&gt;
* Для отрицательных чисел старшие байты заполняются &amp;lt;code&amp;gt;0xFF&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
 '''uint64 readUInt(uint bytes)'''&lt;br /&gt;
'''Назначение:''' Читает беззнаковое целое число из файла.&lt;br /&gt;
&lt;br /&gt;
'''Аргументы:'''&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;bytes&amp;lt;/code&amp;gt; – количество байт для чтения (1–8). Если &amp;lt;code&amp;gt;bytes &amp;gt; 8&amp;lt;/code&amp;gt;, используется 8.&lt;br /&gt;
&lt;br /&gt;
'''Возвращаемое значение:'''&lt;br /&gt;
&lt;br /&gt;
* Прочитанное беззнаковое целое число (тип &amp;lt;code&amp;gt;uint64&amp;lt;/code&amp;gt;).&lt;br /&gt;
* &amp;lt;code&amp;gt;0&amp;lt;/code&amp;gt; – если файл не открыт или достигнут конец файла.&lt;br /&gt;
&lt;br /&gt;
'''Примечания:'''&lt;br /&gt;
&lt;br /&gt;
* Порядок байт определяется свойством &amp;lt;code&amp;gt;mostSignificantByteFirst&amp;lt;/code&amp;gt;.&lt;br /&gt;
* Не выполняет расширение знака.&lt;br /&gt;
* Младшие байты заполняются нулями, если &amp;lt;code&amp;gt;bytes &amp;lt; 8&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
 '''float readFloat()'''&lt;br /&gt;
'''Назначение:''' Читает число с плавающей точкой (32 бита) из файла.&lt;br /&gt;
&lt;br /&gt;
'''Аргументы:''' Отсутствуют.&lt;br /&gt;
&lt;br /&gt;
'''Возвращаемое значение:'''&lt;br /&gt;
&lt;br /&gt;
* Прочитанное число типа &amp;lt;code&amp;gt;float&amp;lt;/code&amp;gt;.&lt;br /&gt;
* &amp;lt;code&amp;gt;0.0f&amp;lt;/code&amp;gt; – если файл не открыт или достигнут конец файла.&lt;br /&gt;
&lt;br /&gt;
'''Примечания:'''&lt;br /&gt;
&lt;br /&gt;
* Читает ровно 4 байта.&lt;br /&gt;
* Порядок байт определяется свойством &amp;lt;code&amp;gt;mostSignificantByteFirst&amp;lt;/code&amp;gt;.&lt;br /&gt;
* Использует объединение (union) для битового преобразования.&lt;br /&gt;
&lt;br /&gt;
 '''double readDouble()'''&lt;br /&gt;
'''Назначение:''' Читает число с плавающей точкой двойной точности (64 бита) из файла.&lt;br /&gt;
&lt;br /&gt;
'''Аргументы:''' Отсутствуют.&lt;br /&gt;
&lt;br /&gt;
'''Возвращаемое значение:'''&lt;br /&gt;
&lt;br /&gt;
* Прочитанное число типа &amp;lt;code&amp;gt;double&amp;lt;/code&amp;gt;.&lt;br /&gt;
* &amp;lt;code&amp;gt;0.0&amp;lt;/code&amp;gt; – если файл не открыт или достигнут конец файла.&lt;br /&gt;
&lt;br /&gt;
'''Примечания:'''&lt;br /&gt;
&lt;br /&gt;
* Читает ровно 8 байт.&lt;br /&gt;
* Порядок байт определяется свойством &amp;lt;code&amp;gt;mostSignificantByteFirst&amp;lt;/code&amp;gt;.&lt;br /&gt;
* Использует объединение (union) для битового преобразования.&lt;br /&gt;
&lt;br /&gt;
== Методы записи ==&lt;br /&gt;
 '''int writeString(const string &amp;amp;in str)'''&lt;br /&gt;
'''Назначение:''' Записывает строку в файл.&lt;br /&gt;
&lt;br /&gt;
'''Аргументы:'''&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;str&amp;lt;/code&amp;gt; – строка для записи.&lt;br /&gt;
&lt;br /&gt;
'''Возвращаемое значение:'''&lt;br /&gt;
&lt;br /&gt;
* Количество записанных байт.&lt;br /&gt;
* &amp;lt;code&amp;gt;-1&amp;lt;/code&amp;gt; – если файл не открыт.&lt;br /&gt;
&lt;br /&gt;
'''Примечания:'''&lt;br /&gt;
&lt;br /&gt;
* Записывает строку целиком, включая все символы (без завершающего нуля).&lt;br /&gt;
&lt;br /&gt;
 '''int writeInt(int64 val, uint bytes)'''&lt;br /&gt;
'''Назначение:''' Записывает знаковое целое число в файл.&lt;br /&gt;
&lt;br /&gt;
'''Аргументы:'''&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;val&amp;lt;/code&amp;gt; – значение для записи.&lt;br /&gt;
* &amp;lt;code&amp;gt;bytes&amp;lt;/code&amp;gt; – количество байт для записи (1–8). Если &amp;lt;code&amp;gt;bytes &amp;gt; 8&amp;lt;/code&amp;gt;, используется 8.&lt;br /&gt;
&lt;br /&gt;
'''Возвращаемое значение:'''&lt;br /&gt;
&lt;br /&gt;
* Количество записанных байт (0 или 1 в терминах &amp;lt;code&amp;gt;fwrite&amp;lt;/code&amp;gt;).&lt;br /&gt;
* &amp;lt;code&amp;gt;0&amp;lt;/code&amp;gt; – если файл не открыт.&lt;br /&gt;
&lt;br /&gt;
'''Примечания:'''&lt;br /&gt;
&lt;br /&gt;
* Порядок байт определяется свойством &amp;lt;code&amp;gt;mostSignificantByteFirst&amp;lt;/code&amp;gt;.&lt;br /&gt;
* Записываются только младшие &amp;lt;code&amp;gt;bytes&amp;lt;/code&amp;gt; байт числа.&lt;br /&gt;
&lt;br /&gt;
 '''int writeUInt(uint64 val, uint bytes)'''&lt;br /&gt;
'''Назначение:''' Записывает беззнаковое целое число в файл.&lt;br /&gt;
&lt;br /&gt;
'''Аргументы:'''&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;val&amp;lt;/code&amp;gt; – значение для записи.&lt;br /&gt;
* &amp;lt;code&amp;gt;bytes&amp;lt;/code&amp;gt; – количество байт для записи (1–8). Если &amp;lt;code&amp;gt;bytes &amp;gt; 8&amp;lt;/code&amp;gt;, используется 8.&lt;br /&gt;
&lt;br /&gt;
'''Возвращаемое значение:'''&lt;br /&gt;
&lt;br /&gt;
* Количество записанных байт (0 или 1 в терминах &amp;lt;code&amp;gt;fwrite&amp;lt;/code&amp;gt;).&lt;br /&gt;
* &amp;lt;code&amp;gt;0&amp;lt;/code&amp;gt; – если файл не открыт.&lt;br /&gt;
&lt;br /&gt;
'''Примечания:'''&lt;br /&gt;
&lt;br /&gt;
* Порядок байт определяется свойством &amp;lt;code&amp;gt;mostSignificantByteFirst&amp;lt;/code&amp;gt;.&lt;br /&gt;
* Записываются только младшие &amp;lt;code&amp;gt;bytes&amp;lt;/code&amp;gt; байт числа.&lt;br /&gt;
&lt;br /&gt;
 '''int writeFloat(float val)'''&lt;br /&gt;
'''Назначение:''' Записывает число с плавающей точкой (32 бита) в файл.&lt;br /&gt;
&lt;br /&gt;
'''Аргументы:'''&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;val&amp;lt;/code&amp;gt; – значение для записи.&lt;br /&gt;
&lt;br /&gt;
'''Возвращаемое значение:'''&lt;br /&gt;
&lt;br /&gt;
* Количество записанных байт (0 или 1 в терминах &amp;lt;code&amp;gt;fwrite&amp;lt;/code&amp;gt;).&lt;br /&gt;
* &amp;lt;code&amp;gt;0&amp;lt;/code&amp;gt; – если файл не открыт.&lt;br /&gt;
&lt;br /&gt;
'''Примечания:'''&lt;br /&gt;
&lt;br /&gt;
* Записывает ровно 4 байта.&lt;br /&gt;
* Порядок байт определяется свойством &amp;lt;code&amp;gt;mostSignificantByteFirst&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
 '''int writeDouble(double val)'''&lt;br /&gt;
'''Назначение:''' Записывает число с плавающей точкой двойной точности (64 бита) в файл.&lt;br /&gt;
&lt;br /&gt;
'''Аргументы:'''&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;val&amp;lt;/code&amp;gt; – значение для записи.&lt;br /&gt;
&lt;br /&gt;
'''Возвращаемое значение:'''&lt;br /&gt;
&lt;br /&gt;
* Количество записанных байт (0 или 1 в терминах &amp;lt;code&amp;gt;fwrite&amp;lt;/code&amp;gt;).&lt;br /&gt;
* &amp;lt;code&amp;gt;0&amp;lt;/code&amp;gt; – если файл не открыт.&lt;br /&gt;
&lt;br /&gt;
'''Примечания:'''&lt;br /&gt;
&lt;br /&gt;
* Записывает ровно 8 байт.&lt;br /&gt;
* Порядок байт определяется свойством &amp;lt;code&amp;gt;mostSignificantByteFirst&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Пример использования ==&lt;br /&gt;
 // Создание и открытие файла для записи&lt;br /&gt;
 file f;&lt;br /&gt;
 f.mostSignificantByteFirst = false; // Little-endian&lt;br /&gt;
 &lt;br /&gt;
 int result = f.open(&amp;quot;data.bin&amp;quot;, &amp;quot;w&amp;quot;);&lt;br /&gt;
 &lt;br /&gt;
 if (result == 0) &lt;br /&gt;
 {&lt;br /&gt;
     f.writeString(&amp;quot;Hello, World!&amp;quot;);&lt;br /&gt;
     f.writeInt(12345, 4);&lt;br /&gt;
     f.writeFloat(3.14159f);&lt;br /&gt;
     f.close();&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 // Открытие файла для чтения&lt;br /&gt;
 file f2;&lt;br /&gt;
 f2.mostSignificantByteFirst = false;&lt;br /&gt;
 f2.open(&amp;quot;data.bin&amp;quot;, &amp;quot;r&amp;quot;);&lt;br /&gt;
 &lt;br /&gt;
 if (!f2.isEndOfFile()) &lt;br /&gt;
 {&lt;br /&gt;
     string str = f2.readLine();&lt;br /&gt;
     int64 num = f2.readInt(4);&lt;br /&gt;
     float pi = f2.readFloat();&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 f2.close();&lt;br /&gt;
 &lt;br /&gt;
 // Чтение бинарных данных с Big-endian порядком&lt;br /&gt;
 file f3;&lt;br /&gt;
 f3.mostSignificantByteFirst = true; // Network byte order&lt;br /&gt;
 f3.open(&amp;quot;network_data.bin&amp;quot;, &amp;quot;r&amp;quot;);&lt;br /&gt;
 uint64 value = f3.readUInt(4); // Читает 4 байта как Big-endian&lt;/div&gt;</summary>
		<author><name>TaushkanovKV</name></author>
	</entry>
</feed>