File. Create Метод
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Создает или усекает и перезаписывает файл по указанному пути.
Перегрузки
Создает или усекает и перезаписывает файл по указанному пути.
Создает или усекает и перезаписывает файл по указанному пути, указывая размер буфера.
Создает или перезаписывает файл по заданному пути с указанием размера буфера и параметров, которые описывают, как создавать или перезаписывать файл.
Создает или перезаписывает файл по заданному пути с указанием размера буфера и параметров, которые описывают, как создавать или перезаписывать файл. Также указывается значение, определяющее контроль доступа и безопасность аудита для файла.
Create(String)
Создает или усекает и перезаписывает файл по указанному пути.
public: static System::IO::FileStream ^ Create(System::String ^ path);
public static System.IO.FileStream Create (string path);
static member Create : string -> System.IO.FileStream
Public Shared Function Create (path As String) As FileStream
Параметры
Путь и имя создаваемого файла.
Возвращаемое значение
FileStream, обеспечивающий доступ для чтения и записи к файлу, указанному в path .
Исключения
У вызывающего объекта отсутствует необходимое разрешение.
Параметр path указывает файл, доступный только для чтения.
path указывает файл, который скрыт.
платформа .NET Framework и .NET Core версий старше 2.1: path строка нулевой длины, содержит только пробелы или содержит один или несколько недопустимых символов. Вы можете запросить недопустимые символы с помощью метода GetInvalidPathChars().
path имеет значение null .
Указанный путь, имя файла или оба значения превышают максимальную длину, заданную в системе.
Указан недопустимый путь (например, он ведет на несопоставленный диск).
Ошибка ввода-вывода при создании файла.
Параметр path задан в недопустимом формате.
Примеры
В следующем примере создается файл по указанному пути, записывается некоторая информация в файл и выполняется чтение из файла.
using namespace System; using namespace System::IO; using namespace System::Text; int main() < String^ path = "c:\\temp\\MyTest.txt"; // Create the file, or overwrite if the file exists. FileStream^ fs = File::Create( path ); try < array^info = (gcnew UTF8Encoding( true ))->GetBytes( "This is some text in the file." ); // Add some information to the file. fs->Write( info, 0, info->Length ); > finally < if ( fs ) delete (IDisposable^)fs; >// Open the stream and read it back. StreamReader^ sr = File::OpenText( path ); try < String^ s = ""; while ( s = sr->ReadLine() ) < Console::WriteLine( s ); >> finally < if ( sr ) delete (IDisposable^)sr; >>
using System; using System.IO; using System.Text; class Test < public static void Main() < string path = @"c:\temp\MyTest.txt"; try < // Create the file, or overwrite if the file exists. using (FileStream fs = File.Create(path)) < byte[] info = new UTF8Encoding(true).GetBytes("This is some text in the file."); // Add some information to the file. fs.Write(info, 0, info.Length); >// Open the stream and read it back. using (StreamReader sr = File.OpenText(path)) < string s = ""; while ((s = sr.ReadLine()) != null) < Console.WriteLine(s); >> > catch (Exception ex) < Console.WriteLine(ex.ToString()); >> >
open System.IO open System.Text let path = @"c:\temp\MyTest.txt" // Create the file, or overwrite if the file exists. do use fs = File.Create path let info = UTF8Encoding(true) .GetBytes "This is some text in the file." // Add some information to the file. fs.Write(info, 0, info.Length) // Open the stream and read it back. do use sr = File.OpenText path let mutable s = sr.ReadLine() while isNull s |> not do printfn $"" s
Imports System.IO Imports System.Text Public Class Test Public Shared Sub Main() Dim path As String = "c:\temp\MyTest.txt" Try ' Create the file, or overwrite if the file exists. Using fs As FileStream = File.Create(path) Dim info As Byte() = New UTF8Encoding(True).GetBytes("This is some text in the file.") ' Add some information to the file. fs.Write(info, 0, info.Length) End Using ' Open the stream and read it back. Using sr As StreamReader = File.OpenText(path) Do While sr.Peek() >= 0 Console.WriteLine(sr.ReadLine()) Loop End Using Catch ex As Exception Console.WriteLine(ex.ToString()) End Try End Sub End Class
Комментарии
Объект, FileStream созданный этим методом, имеет значение по умолчанию FileShare ; никакой Noneдругой процесс или код не может получить доступ к созданному файлу, пока исходный дескриптор файла не будет закрыт.
Этот метод эквивалентен перегрузке Create(String, Int32) метода с размером буфера по умолчанию 4096 байт.
Параметр path может указывать относительные или абсолютные сведения о пути. Относительные сведения о пути интерпретируются как относительные относительно текущего рабочего каталога. Сведения о том, как получить текущий рабочий каталог, см. в разделе GetCurrentDirectory.
Если указанный файл не существует, он создается; Если он существует и не доступен только для чтения, содержимое удаляется и перезаписывается.
По умолчанию полный доступ на чтение и запись к новым файлам предоставляется всем пользователям. Файл открывается с доступом для чтения и записи и должен быть закрыт, прежде чем его сможет открыть другое приложение.
Список распространенных задач ввода-вывода см. в разделе Общие задачи ввода-вывода.
См. также раздел
- Файловый и потоковый ввод-вывод
- Чтение текста из файла
- Практическое руководство. Запись текста в файл
- Практическое руководство. Считывание данных из нового файла и запись в этот файл
Применяется к
Create(String, Int32)
Создает или усекает и перезаписывает файл по указанному пути, указывая размер буфера.
public: static System::IO::FileStream ^ Create(System::String ^ path, int bufferSize);
public static System.IO.FileStream Create (string path, int bufferSize);
static member Create : string * int -> System.IO.FileStream
Public Shared Function Create (path As String, bufferSize As Integer) As FileStream
Параметры
Путь и имя создаваемого файла.
bufferSize Int32
Число байтов, буферизируемых при чтении и записи в данный файл.
Возвращаемое значение
FileStream с заданным размером буфера, который обеспечивает доступ для чтения и записи к файлу, указанному в path .
Исключения
У вызывающего объекта отсутствует необходимое разрешение.
Параметр path указывает файл, доступный только для чтения.
path указывает файл, который скрыт.
платформа .NET Framework и .NET Core версий старше 2.1: path строка нулевой длины, содержит только пробелы или содержит один или несколько недопустимых символов. Вы можете запросить недопустимые символы с помощью метода GetInvalidPathChars().
path имеет значение null .
Указанный путь, имя файла или оба значения превышают максимальную длину, заданную в системе.
Указан недопустимый путь (например, он ведет на несопоставленный диск).
Ошибка ввода-вывода при создании файла.
Параметр path задан в недопустимом формате.
Примеры
В следующем примере создается файл с указанным размером буфера.
using namespace System; using namespace System::IO; using namespace System::Text; int main() < String^ path = "c:\\temp\\MyTest.txt"; // Create the file, or overwrite if the file exists. FileStream^ fs = File::Create( path, 1024 ); try < array^info = (gcnew UTF8Encoding( true ))->GetBytes( "This is some text in the file." ); // Add some information to the file. fs->Write( info, 0, info->Length ); > finally < if ( fs ) delete (IDisposable^)fs; >// Open the stream and read it back. StreamReader^ sr = File::OpenText( path ); try < String^ s = ""; while ( s = sr->ReadLine() ) < Console::WriteLine( s ); >> finally < if ( sr ) delete (IDisposable^)sr; >>
using System; using System.IO; using System.Text; class Test < public static void Main() < string path = @"c:\temp\MyTest.txt"; // Create the file, or overwrite if the file exists. using (FileStream fs = File.Create(path, 1024)) < byte[] info = new UTF8Encoding(true).GetBytes("This is some text in the file."); // Add some information to the file. fs.Write(info, 0, info.Length); >// Open the stream and read it back. using (StreamReader sr = File.OpenText(path)) < string s = ""; while ((s = sr.ReadLine()) != null) < Console.WriteLine(s); >> > >
open System.IO open System.Text let path = @"c:\temp\MyTest.txt" // Create the file, or overwrite if the file exists. do use fs = File.Create(path, 1024) let info = UTF8Encoding(true) .GetBytes "This is some text in the file." // Add some information to the file. fs.Write(info, 0, info.Length) // Open the stream and read it back. do use sr = File.OpenText path let mutable s = sr.ReadLine() while isNull s |> not do printfn $"" s
Imports System.IO Imports System.Text Public Class Test Public Shared Sub Main() Dim path As String = "c:\temp\MyTest.txt" Try ' Create the file, or overwrite if the file exists. Using fs As FileStream = File.Create(path, 1024) Dim info As Byte() = New UTF8Encoding(True).GetBytes("This is some text in the file.") ' Add some information to the file. fs.Write(info, 0, info.Length) End Using ' Open the stream and read it back. Using sr As StreamReader = File.OpenText(path) Do While sr.Peek() >= 0 Console.WriteLine(sr.ReadLine()) Loop End Using Catch ex As Exception Console.WriteLine(ex.ToString()) End Try End Sub End Class
Комментарии
Объект, FileStream созданный этим методом, имеет значение по умолчанию FileShare ; никакой Noneдругой процесс или код не может получить доступ к созданному файлу, пока исходный дескриптор файла не будет закрыт.
Параметр path может указывать относительные или абсолютные сведения о пути. Относительные сведения о пути интерпретируются как относительные относительно текущего рабочего каталога. Сведения о том, как получить текущий рабочий каталог, см. в разделе GetCurrentDirectory.
Этот метод эквивалентен перегрузке конструктора FileStream(String, FileMode, FileAccess, FileShare, Int32) . Если указанный файл не существует, он создается; Если он существует и не доступен только для чтения, содержимое будет заменено.
По умолчанию полный доступ на чтение и запись к новым файлам предоставляется всем пользователям. Файл открывается с доступом для чтения и записи и должен быть закрыт, прежде чем его сможет открыть другое приложение.
Список распространенных задач ввода-вывода см. в разделе Общие задачи ввода-вывода.
См. также раздел
- Файловый и потоковый ввод-вывод
- Чтение текста из файла
- Практическое руководство. Запись текста в файл
- Практическое руководство. Считывание данных из нового файла и запись в этот файл
Работа с файлами в С++
Большинство компьютерных программ работают с файлами, и поэтому возникает необходимость создавать, удалять, записывать читать, открывать файлы. Что же такое файл? Файл – именованный набор байтов, который может быть сохранен на некотором накопителе. Ну, теперь ясно, что под файлом понимается некоторая последовательность байтов, которая имеет своё, уникальное имя, например файл.txt . В одной директории не могут находиться файлы с одинаковыми именами. Под именем файла понимается не только его название, но и расширение, например: file.txt и file.dat — разные файлы, хоть и имеют одинаковые названия. Существует такое понятие, как полное имя файлов – это полный адрес к директории файла с указанием имени файла, например: D:\docs\file.txt . Важно понимать эти базовые понятия, иначе сложно будет работать с файлами.
Для работы с файлами необходимо подключить заголовочный файл . В определены несколько классов и подключены заголовочные файлы — файловый ввод и — файловый вывод.
Файловый ввод/вывод аналогичен стандартному вводу/выводу, единственное отличие – это то, что ввод/вывод выполнятся не на экран, а в файл. Если ввод/вывод на стандартные устройства выполняется с помощью объектов cin и cout , то для организации файлового ввода/вывода достаточно создать собственные объекты, которые можно использовать аналогично операторам cin и cout .
Например, необходимо создать текстовый файл и записать в него строку Работа с файлами в С++ . Для этого необходимо проделать следующие шаги:
- создать объект класса ofstream ;
- связать объект класса с файлом, в который будет производиться запись;
- записать строку в файл;
- закрыть файл.
Почему необходимо создавать объект класса ofstream , а не класса ifstream ? Потому, что нужно сделать запись в файл, а если бы нужно было считать данные из файла, то создавался бы объект класса ifstream .
// создаём объект для записи в файл ofstream /*имя объекта*/; // объект класса ofstream
Назовём объект – fout , Вот что получится:
ofstream fout;
Для чего нам объект? Объект необходим, чтобы можно было выполнять запись в файл. Уже объект создан, но не связан с файлом, в который нужно записать строку.
fout.open("cppstudio.txt"); // связываем объект с файлом
Через операцию точка получаем доступ к методу класса open(), в круглых скобочках которого указываем имя файла. Указанный файл будет создан в текущей директории с программой. Если файл с таким именем существует, то существующий файл будет заменен новым. Итак, файл открыт, осталось записать в него нужную строку. Делается это так:
foutИспользуя операцию передачи в поток совместно с объектом fout строка Работа с файлами в С++ записывается в файл. Так как больше нет необходимости изменять содержимое файла, его нужно закрыть, то есть отделить объект от файла.
fout.close(); // закрываем файлИтог – создан файл со строкой Работа с файлами в С++ .
Шаги 1 и 2 можно объединить, то есть в одной строке создать объект и связать его с файлом. Делается это так:
ofstream fout("cppstudio.txt"); // создаём объект класса ofstream и связываем его с файлом cppstudio.txtОбъединим весь код и получим следующую программу.
// file.cpp: определяет точку входа для консольного приложения. #include "stdafx.h" #include using namespace std; int main(int argc, char* argv[]) < ofstream fout("cppstudio.txt"); // создаём объект класса ofstream для записи и связываем его с файлом cppstudio.txt foutОсталось проверить правильность работы программы, а для этого открываем файл cppstudio.txt и смотрим его содержимое, должно быть — Работа с файлами в С++ .
Для того чтобы прочитать файл понадобится выполнить те же шаги, что и при записи в файл с небольшими изменениями:
- создать объект класса ifstream и связать его с файлом, из которого будет производиться считывание;
- прочитать файл;
- закрыть файл.
// file_read.cpp: определяет точку входа для консольного приложения. #include "stdafx.h" #include #include using namespace std; int main(int argc, char* argv[]) < setlocale(LC_ALL, "rus"); // корректное отображение Кириллицы char buff[50]; // буфер промежуточного хранения считываемого из файла текста ifstream fin("cppstudio.txt"); // открыли файл для чтения fin >> buff; // считали первое слово из файла coutВ программе показаны два способа чтения из файла, первый – используя операцию передачи в поток, второй – используя функцию getline() . В первом случае считывается только первое слово, а во втором случае считывается строка, длинной 50 символов. Но так как в файле осталось меньше 50 символов, то считываются символы включительно до последнего. Обратите внимание на то, что считывание во второй раз ( строка 17 ) продолжилось, после первого слова, а не с начала, так как первое слово было прочитано в строке 14 . Результат работы программы показан на рисунке 1.
CppStudio.com
Работа с файлами в С++ Для продолжения нажмите любую клавишу . . .Рисунок 1 — Работа с файлами в С++
Программа сработала правильно, но не всегда так бывает, даже в том случае, если с кодом всё впорядке. Например, в программу передано имя несуществующего файла или в имени допущена ошибка. Что тогда? В этом случае ничего не произойдёт вообще. Файл не будет найден, а значит и прочитать его не возможно. Поэтому компилятор проигнорирует строки, где выполняется работа с файлом. В результате корректно завершится работа программы, но ничего, на экране показано не будет. Казалось бы это вполне нормальная реакции на такую ситуацию. Но простому пользователю не будет понятно, в чём дело и почему на экране не появилась строка из файла. Так вот, чтобы всё было предельно понятно в С++ предусмотрена такая функция — is_open() , которая возвращает целые значения: 1 — если файл был успешно открыт, 0 — если файл открыт не был. Доработаем программу с открытием файла, таким образом, что если файл не открыт выводилось соответствующее сообщение.
// file_read.cpp: определяет точку входа для консольного приложения. #include "stdafx.h" #include #include using namespace std; int main(int argc, char* argv[]) < setlocale(LC_ALL, "rus"); // корректное отображение Кириллицы char buff[50]; // буфер промежуточного хранения считываемого из файла текста ifstream fin("cppstudio.doc"); // (ВВЕЛИ НЕ КОРРЕКТНОЕ ИМЯ ФАЙЛА) if (!fin.is_open()) // если файл не открыт cout > buff; // считали первое слово из файла cout system("pause"); return 0; >Результат работы программы показан на рисунке 2.
CppStudio.com
Файл не может быть открыт! Для продолжения нажмите любую клавишу . . .Рисунок 2 — Работа с файлами в С++
Как видно из рисунка 2 программа сообщила о невозможности открыть файл. Поэтому, если программа работает с файлами, рекомендуется использовать эту функцию, is_open() , даже, если уверены, что файл существует.
Режимы открытия файлов
Режимы открытия файлов устанавливают характер использования файлов. Для установки режима в классе ios_base предусмотрены константы, которые определяют режим открытия файлов (см. Таблица 1).
| Константа | Описание |
|---|---|
| ios_base::in | открыть файл для чтения |
| ios_base::out | открыть файл для записи |
| ios_base::ate | при открытии переместить указатель в конец файла |
| ios_base::app | открыть файл для записи в конец файла |
| ios_base::trunc | удалить содержимое файла, если он существует |
| ios_base::binary | открытие файла в двоичном режиме |
Режимы открытия файлов можно устанавливать непосредственно при создании объекта или при вызове функции open() .
ofstream fout("cppstudio.txt", ios_base::app); // открываем файл для добавления информации к концу файла fout.open("cppstudio.txt", ios_base::app); // открываем файл для добавления информации к концу файла
Режимы открытия файлов можно комбинировать с помощью поразрядной логической операции или | , например: ios_base::out | ios_base::trunc — открытие файла для записи, предварительно очистив его.
Объекты класса ofstream , при связке с файлами по умолчанию содержат режимы открытия файлов ios_base::out | ios_base::trunc . То есть файл будет создан, если не существует. Если же файл существует, то его содержимое будет удалено, а сам файл будет готов к записи. Объекты класса ifstream связываясь с файлом, имеют по умолчанию режим открытия файла ios_base::in — файл открыт только для чтения. Режим открытия файла ещё называют — флаг, для удобочитаемости в дальнейшем будем использовать именно этот термин. В таблице 1 перечислены далеко не все флаги, но для начала этих должно хватить.
Обратите внимание на то, что флаги ate и app по описанию очень похожи, они оба перемещают указатель в конец файла, но флаг app позволяет производить запись, только в конец файла, а флаг ate просто переставляет флаг в конец файла и не ограничивает места записи.
Разработаем программу, которая, используя операцию sizeof() , будет вычислять характеристики основных типов данных в С++ и записывать их в файл. Характеристики:
- число байт, отводимое под тип данных
- максимальное значение, которое может хранить определённый тип данных.
Запись в файл должна выполняться в таком формате:
/* data type byte max value bool = 1 255.00 char = 1 255.00 short int = 2 32767.00 unsigned short int = 2 65535.00 int = 4 2147483647.00 unsigned int = 4 4294967295.00 long int = 4 2147483647.00 unsigned long int = 4 4294967295.00 float = 4 2147483647.00 long float = 8 9223372036854775800.00 double = 8 9223372036854775800.00 */
Такая программа уже разрабатывалась ранее в разделе Типы данных С++ , но там вся информация о типах данных выводилась на стандартное устройство вывода, а нам необходимо программу переделать так, чтобы информация записывалась в файл. Для этого необходимо открыть файл в режиме записи, с предварительным усечением текущей информации файла (строка 14). Как только файл создан и успешно открыт (строки 16 — 20), вместо оператора cout , в строке 22 используем объект fout . таким образом, вместо экрана информация о типах данных запишется в файл.
// write_file.cpp: определяет точку входа для консольного приложения. #include "stdafx.h" #include #include // работа с файлами #include // манипуляторы ввода/вывода using namespace std; int main(int argc, char* argv[]) < setlocale(LC_ALL, "rus"); // связываем объект с файлом, при этом файл открываем в режиме записи, предварительно удаляя все данные из него ofstream fout("data_types.txt", ios_base::out | ios_base::trunc); if (!fout.is_open()) // если файл небыл открыт < cout fout << " data type " << "byte" << " " << " max value " << endl // заголовки столбцов << "bool = " << sizeof(bool) << " " << fixed << setprecision(2) /*вычисляем максимальное значение для типа данных bool*/ << (pow(2,sizeof(bool) * 8.0) - 1) << endl << "char = " << sizeof(char) << " " << fixed << setprecision(2) /*вычисляем максимальное значение для типа данных char*/ << (pow(2,sizeof(char) * 8.0) - 1) << endl << "short int = " << sizeof(short int) << " " << fixed << setprecision(2) /*вычисляем максимальное значение для типа данных short int*/ << (pow(2,sizeof(short int) * 8.0 - 1) - 1) << endl << "unsigned short int = " << sizeof(unsigned short int) << " " << fixed << setprecision(2) /*вычисляем максимальное значение для типа данных unsigned short int*/ << (pow(2,sizeof(unsigned short int) * 8.0) - 1) << endl << "int = " << sizeof(int) << " " << fixed << setprecision(2) /*вычисляем максимальное значение для типа данных int*/ << (pow(2,sizeof(int) * 8.0 - 1) - 1) << endl << "unsigned int = " << sizeof(unsigned int) << " " << fixed << setprecision(2) /*вычисляем максимальное значение для типа данных unsigned int*/ << (pow(2,sizeof(unsigned int) * 8.0) - 1) << endl << "long int = " << sizeof(long int) << " " << fixed << setprecision(2) /*вычисляем максимальное значение для типа данных long int*/ << (pow(2,sizeof(long int) * 8.0 - 1) - 1) << endl << "unsigned long int = " << sizeof(unsigned long int) << " " << fixed << setprecision(2) /*вычисляем максимальное значение для типа данных undigned long int*/ << (pow(2,sizeof(unsigned long int) * 8.0) - 1) << endl << "float = " << sizeof(float) << " " << fixed << setprecision(2) /*вычисляем максимальное значение для типа данных float*/ << (pow(2,sizeof(float) * 8.0 - 1) - 1) << endl << "long float = " << sizeof(long float) << " " << fixed << setprecision(2) /*вычисляем максимальное значение для типа данных long float*/ << (pow(2,sizeof(long float) * 8.0 - 1) - 1) << endl << "double = " << sizeof(double) << " " << fixed << setprecision(2) /*вычисляем максимальное значение для типа данных double*/ << (pow(2,sizeof(double) * 8.0 - 1) - 1) << endl; fout.close(); // программа больше не использует файл, поэтому его нужно закрыть cout
Нельзя не заметить, что изменения в программе минимальны, а всё благодаря тому, что стандартный ввод/вывод и файловый ввод/вывод используются абсолютно аналогично. В конце программы, в строке 45 мы явно закрыли файл, хотя это и не обязательно, но считается хорошим тоном программирования. Стоит отметить, что все функции и манипуляторы используемые для форматирования стандартного ввода/вывода актуальны и для файлового ввода/вывода. Поэтому не возникло никаких ошибок, когда оператор cout был заменён объектом fout .
#9 - Работа с файлами через язык Си
За счёт языка Си вы можете с легкостью манипулировать файлами и помещать в них различную информацию и позже считывать её. За урок мы научимся работать с файлами через язык Си.
Видеоурок
Многие языки программирования предоставляют классы для работы с файлами и директориями проекта. Язык Си обладает множеством возможностей для записи и чтения данных из файлов.
Работа с файлами
При работе с файлами всегда необходимо помнить две вещи:
- Перед началом работы с файлом его необходимо открыть;
- После завершения работы с файлом его необходимо закрыть.
Если файл не открыт или же неверно открыт, то вы не можете полноценно работать с его содержимым.
С закрытием все проще, но и коварнее. Если вы не закроете файл, то программа будет работать верно, тем не менее, чем больше будет открытых файлов, тем больше программа будет перегружена и в какой-то момент она просто зависнет или выключиться.
Запись данных в файл
При записи данных в файл его изначально необходимо открыть. Для этого в языке Си используется функция fopen :
// Создание/открытие файла "examples.txt" // Можно было использовать метод fopen FILE *file = fopen("examples.txt", "w"); // Помещение данных fprintf(file, "Hello George"); // Закрываем файл fclose(file);
Таким образом мы можем открыть файл и поместить в него любую информацию.
Режим необходимо прописывать в качестве второго параметра при открытии файла:
Чтение данных из файла
Для чтения данных файл необходимо также изначально открыть и в конце закрыть. Чтобы прочесть содержимое файла используется функция fgets :
FILE *file = fopen("test.txt", "r"); fgets(line, 255, file); printf("%s", line); fclose(file);
Программа обучения
Также хотим отметить, что если вас интересует более углубленное изучение языка и его фреймворков, то предлагаем вашему внимаю наш полный курс по изучению C++ . За курс вы изучите язык C++, научитесь работать с библиотекой STL, базами данных, многопоточностью и научитесь строить приложения при помощи WinForms и QT.
Весь код будет доступен после подписки на проект!
Создайте файл TXT в C++.
Нативное и высокопроизводительное создание файлов TXT программно без Micorsoft Office с использованием библиотеки C++.
Aspose.Cells for C++
Overview
Download from NuGet
Open NuGet package manager, search for and install.
You may also use the following command from the Package Manager Console.
Visit our documentation for more details.
Создайте файл TXT, используя C++.
Как создать файл TXT? С помощью библиотеки Aspose.Cells for C++ вы можете легко создать файл TXT программно с помощью нескольких строк кода. Aspose.Cells for C++ способен создавать кроссплатформенные приложения с возможностью генерировать, изменять, конвертировать, отображать и распечатывать все файлы Excel. C++ Excel API не только конвертирует форматы электронных таблиц, но также может отображать файлы Excel в виде изображений, PDF, HTML, ODS, CSV, SVG, JSON, WORD, PPT и т. д., что делает его идеальным выбором для обмена документами в стандартных отраслевых форматах. Вы можете скачать последнюю версию напрямую, просто откройте NuGet менеджер пакетов, найдите Aspose.Cells.Cpp и установите. Вы также можете использовать следующую команду из консоли диспетчера пакетов.
Команда
PM> Install-Package Aspose.Cells.Cpp
Как создать TXT в C++
Разработчикам легко создавать, загружать, изменять и конвертировать файлы TXT в запущенных приложениях отчетности для обработки данных всего за несколько строк кода.
- Создайте объект класса Workbook.
- Поместите первый лист в объект Worksheet.
- Используйте метод Worksheet.GetCells(), чтобы поместить ячейки рабочего листа в объект Cells.
- Используйте метод Cells.Get() для доступа к нужной ячейке листа в объекте Cell.
- Используйте метод Cell.PutValue() для ввода значения в ячейку.
- Сохраните книгу как файл .txt, используя метод Save().
Пример кода показывает, как создать файл TXT в C++.
Aspose::Cells::Startup(); // Create an object of the Workbook class. Workbook wkb; // Get the first sheet into an Worksheet object. WorksheetCollection wsc = wkb.GetWorksheets(); Worksheet ws = wsc.Get(0); // Use Worksheet.GetCells() method to get the cells of the worksheet into an Cells object. Cells cells = ws.GetCells(); // Use Cells.Get() method to access the desired cell of the worksheet into an Cell object. Cell cell00 = cells.Get(0, 0); Cell cell01 = cells.Get(0, 1); Cell cell10 = cells.Get(1, 0); Cell cell11 = cells.Get(1, 1); // Use Cell.PutValue() method to input value into the cell. cell00.PutValue(u"ColumnA"); cell01.PutValue(u"ColumnB"); cell10.PutValue(u"ValueA"); cell11.PutValue(u"ValueB"); // Save workbook to resultFile folder wkb.Save(u"created_one.txt"); Aspose::Cells::Cleanup();
Библиотека C++ для создания файла TXT
Существует три варианта установки «Aspose.Cells for C++» в вашу систему. Пожалуйста, выберите тот, который соответствует вашим потребностям, и следуйте пошаговым инструкциям:
- Установите NuGet Пакет . Видеть Документация
- Установите библиотеку, используя папки Include и lib. Видеть Документация
- Установите Aspose.Cells for C++ в Linux. Видеть Документация
Системные Требования
Прежде чем запускать пример исходного кода преобразования C++, убедитесь, что у вас есть следующие предварительные условия.
- Microsoft Windows или совместимая ОС с C++ Runtime Environment для Windows 32-разрядной версии, Windows 64-разрядной версии и 64-разрядной версии Linux.
- Добавьте ссылку на DLL Aspose.Cells for C++ в свой проект.
TXT Формат файла TXT
Файл с расширением .TXT представляет собой текстовый документ, содержащий обычный текст в виде строк. Абзацы в текстовом документе распознаются по возврату каретки и используются для лучшего расположения содержимого файла. Стандартный текстовый документ можно открыть в любом текстовом редакторе или текстовом редакторе в разных операционных системах. Весь текст, содержащийся в таком файле, имеет удобочитаемый формат и представлен последовательностью символов.
Другое поддерживаемое поколение листов
Вы также можете создать другие файлы Excel Microsoft, включая несколько перечисленных ниже.