Этот класс предназначен для работы с файлами.
Подключить пространство имен System.IO.
Подключить пространство имен System.IO.
наиболее часто используемые члены класса |
|
Exists | проверяет, существует ли файл по заданному пути |
Name | возвращает имя файла |
DirectoryName | возвращает имя корневой директории |
Extension | возвращает расширение файла |
FullName | возвращает полный путь к файлу |
Length | возвращает размер файла в байтах |
IsReadOnly | true — файл только для чтения, false — для записи и для чтения |
CreationTime | возвращает или задает время создания файла |
LastWriteTime | возвращает время последней записи в файл |
Create() | создает файл, если такой существует, перезаписывает его |
CreateText() | создает файл, записывает в него текст; если файл существует, то удаляет в нем старый текст и записывает новый |
AppendText() | дописывает текст в конец файла |
Delete() | удаляет файл, без возможности восстановления |
CopyTo(path, bool) | копирует существующий файл в новый файл; true — разрешает перезапись старого файла, false — не разрешает |
Replace() | заменяет содержимое указанного файла, содержимым другого файла, другой файл удаляется |
MoveTo(path) | перемещает файл по заданному пути |
Open(mode, access, share) | открывает файл и задает режим, доступ, параметр доступа; метод возвращает объект FileStream, работающий с байтовыми потоками |
Exists
Свойство проверяет, существует ли файл по заданному пути.
Main.cs
using
System;
//подключить пространство имен
using
System.IO;
class
Program {
-
public
static
int
Main() {
-
string
path =
@"D:\zzz\a.txt"
;
-
FileInfo FI =
new
FileInfo(path);
-
if
(FI.Exists) {
-
Console.WriteLine(
"такой файл существует"
);
-
}
-
else
{
-
Console.WriteLine(
"такой файл не существует"
);
-
}
-
Console.ReadKey();
-
return
0;
-
}
}
using
System;
//подключить пространство имен
using
System.IO;
class
Program {
-
public
static
int
Main() {
-
string
path =
@"D:\zzz\a.txt"
;
-
FileInfo FI =
new
FileInfo(path);
-
if
(FI.Exists) {
-
Console.WriteLine(
"такой файл существует"
);
-
}
-
else
{
-
Console.WriteLine(
"такой файл не существует"
);
-
}
-
Console.ReadKey();
-
return
0;
-
}
}
такой файл существует
Name
Свойство возвращает имя файла.
Main.cs
using
System;
//подключить пространство имен
using
System.IO;
class
Program {
-
public
static
int
Main() {
-
string
path =
@"D:\zzz\a.txt"
;
-
FileInfo FI =
new
FileInfo(path);
-
if
(FI.Exists) {
-
Console.WriteLine(FI.Name);
-
}
-
else
{
-
Console.WriteLine(
"такой файл не существует"
);
-
}
-
Console.ReadKey();
-
return
0;
-
}
}
using
System;
//подключить пространство имен
using
System.IO;
class
Program {
-
public
static
int
Main() {
-
string
path =
@"D:\zzz\a.txt"
;
-
FileInfo FI =
new
FileInfo(path);
-
if
(FI.Exists) {
-
Console.WriteLine(FI.Name);
-
}
-
else
{
-
Console.WriteLine(
"такой файл не существует"
);
-
}
-
Console.ReadKey();
-
return
0;
-
}
}
a.txt
DirectoryName
Свойство возвращает имя корневой директории.
Main.cs
using
System;
//подключить пространство имен
using
System.IO;
class
Program {
-
public
static
int
Main() {
-
string
path =
@"D:\zzz\a.txt"
;
-
FileInfo FI =
new
FileInfo(path);
-
if
(FI.Exists) {
-
Console.WriteLine(FI.DirectoryName);
-
}
-
else
{
-
Console.WriteLine(
"такой файл не существует"
);
-
}
-
Console.ReadKey();
-
return
0;
-
}
}
using
System;
//подключить пространство имен
using
System.IO;
class
Program {
-
public
static
int
Main() {
-
string
path =
@"D:\zzz\a.txt"
;
-
FileInfo FI =
new
FileInfo(path);
-
if
(FI.Exists) {
-
Console.WriteLine(FI.DirectoryName);
-
}
-
else
{
-
Console.WriteLine(
"такой файл не существует"
);
-
}
-
Console.ReadKey();
-
return
0;
-
}
}
D:\zzz
Extension
Свойство возвращает расширение файла.
Main.cs
using
System;
//подключить пространство имен
using
System.IO;
class
Program {
-
public
static
int
Main() {
-
string
path =
@"D:\zzz\a.txt"
;
-
FileInfo FI =
new
FileInfo(path);
-
if
(FI.Exists) {
-
Console.WriteLine(FI.Extension);
-
}
-
else
{
-
Console.WriteLine(
"такой файл не существует"
);
-
}
-
Console.ReadKey();
-
return
0;
-
}
}
using
System;
//подключить пространство имен
using
System.IO;
class
Program {
-
public
static
int
Main() {
-
string
path =
@"D:\zzz\a.txt"
;
-
FileInfo FI =
new
FileInfo(path);
-
if
(FI.Exists) {
-
Console.WriteLine(FI.Extension);
-
}
-
else
{
-
Console.WriteLine(
"такой файл не существует"
);
-
}
-
Console.ReadKey();
-
return
0;
-
}
}
.txt
FullName
Свойство возвращает полный путь к файлу.
Main.cs
using
System;
//подключить пространство имен
using
System.IO;
class
Program {
-
public
static
int
Main() {
-
string
path =
@"D:\zzz\a.txt"
;
-
FileInfo FI =
new
FileInfo(path);
-
if
(FI.Exists) {
-
Console.WriteLine(FI.FullName);
-
}
-
else
{
-
Console.WriteLine(
"такой файл не существует"
);
-
}
-
Console.ReadKey();
-
return
0;
-
}
}
using
System;
//подключить пространство имен
using
System.IO;
class
Program {
-
public
static
int
Main() {
-
string
path =
@"D:\zzz\a.txt"
;
-
FileInfo FI =
new
FileInfo(path);
-
if
(FI.Exists) {
-
Console.WriteLine(FI.FullName);
-
}
-
else
{
-
Console.WriteLine(
"такой файл не существует"
);
-
}
-
Console.ReadKey();
-
return
0;
-
}
}
D:\zzz\a.txt
Length
Свойство возвращает размер файла в байтах.
Main.cs
using
System;
//подключить пространство имен
using
System.IO;
class
Program {
-
public
static
int
Main() {
-
string
path =
@"D:\zzz\a.txt"
;
-
FileInfo FI =
new
FileInfo(path);
-
if
(FI.Exists) {
-
Console.WriteLine(
"{0} байт"
, FI.Length);
-
}
-
else
{
-
Console.WriteLine(
"такой файл не существует"
);
-
}
-
Console.ReadKey();
-
return
0;
-
}
}
using
System;
//подключить пространство имен
using
System.IO;
class
Program {
-
public
static
int
Main() {
-
string
path =
@"D:\zzz\a.txt"
;
-
FileInfo FI =
new
FileInfo(path);
-
if
(FI.Exists) {
-
Console.WriteLine(
"{0} байт"
, FI.Length);
-
}
-
else
{
-
Console.WriteLine(
"такой файл не существует"
);
-
}
-
Console.ReadKey();
-
return
0;
-
}
}
34 байт
IsReadOnly
Свойство устанавливает или задает значение true — файл только для чтения, false — для записи и для чтения.
Main.cs
using
System;
//подключить пространство имен
using
System.IO;
class
Program {
-
public
static
int
Main() {
-
string
path =
@"D:\zzz\a.txt"
;
-
FileInfo FI =
new
FileInfo(path);
-
if
(FI.Exists) {
-
if
(FI.IsReadOnly) {
-
Console.WriteLine(
"файл доступен только для чтения"
);
-
}
-
else
{
-
Console.WriteLine(
"файл доступен для чтения и для записи"
);
-
}
-
}
-
else
{
-
Console.WriteLine(
"такой файл не существует"
);
-
}
-
Console.ReadKey();
-
return
0;
-
}
}
using
System;
//подключить пространство имен
using
System.IO;
class
Program {
-
public
static
int
Main() {
-
string
path =
@"D:\zzz\a.txt"
;
-
FileInfo FI =
new
FileInfo(path);
-
if
(FI.Exists) {
-
if
(FI.IsReadOnly) {
-
Console.WriteLine(
"файл доступен только для чтения"
);
-
}
-
else
{
-
Console.WriteLine(
"файл доступен для чтения и для записи"
);
-
}
-
}
-
else
{
-
Console.WriteLine(
"такой файл не существует"
);
-
}
-
Console.ReadKey();
-
return
0;
-
}
}
файл доступен для чтения и для записи
CreationTime
Свойство возвращает или задает время создания файла.
Main.cs
using
System;
//подключить пространство имен
using
System.IO;
class
Program {
-
public
static
int
Main() {
-
string
path =
@"D:\zzz\a.txt"
;
-
FileInfo FI =
new
FileInfo(path);
-
if
(FI.Exists) {
-
Console.WriteLine(
"{0:U}"
, FI.CreationTime);
-
}
-
else
{
-
Console.WriteLine(
"такой файл не существует"
);
-
}
-
Console.ReadKey();
-
return
0;
-
}
}
using
System;
//подключить пространство имен
using
System.IO;
class
Program {
-
public
static
int
Main() {
-
string
path =
@"D:\zzz\a.txt"
;
-
FileInfo FI =
new
FileInfo(path);
-
if
(FI.Exists) {
-
Console.WriteLine(
"{0:U}"
, FI.CreationTime);
-
}
-
else
{
-
Console.WriteLine(
"такой файл не существует"
);
-
}
-
Console.ReadKey();
-
return
0;
-
}
}
27 октября 2014 г. 3:20:18
LastWriteTime
Свойство возвращает время последней записи в файл.
Main.cs
using
System;
//подключить пространство имен
using
System.IO;
class
Program {
-
public
static
int
Main() {
-
string
path =
@"D:\zzz\a.txt"
;
-
FileInfo FI =
new
FileInfo(path);
-
if
(FI.Exists) {
-
Console.WriteLine(
"{0:U}"
, FI.LastWriteTime);
-
}
-
else
{
-
Console.WriteLine(
"такой файл не существует"
);
-
}
-
Console.ReadKey();
-
return
0;
-
}
}
using
System;
//подключить пространство имен
using
System.IO;
class
Program {
-
public
static
int
Main() {
-
string
path =
@"D:\zzz\a.txt"
;
-
FileInfo FI =
new
FileInfo(path);
-
if
(FI.Exists) {
-
Console.WriteLine(
"{0:U}"
, FI.LastWriteTime);
-
}
-
else
{
-
Console.WriteLine(
"такой файл не существует"
);
-
}
-
Console.ReadKey();
-
return
0;
-
}
}
28 октября 2014 г. 13:41:08
Create()
Метод создает файл, если такой существует, перезаписывает его.
Main.cs
using
System;
//подключить пространство имен
using
System.IO;
class
Program {
-
public
static
int
Main() {
-
string
path =
@"D:\zzz\a.txt"
;
-
string
pathDirectory =
@"D:\zzz"
;
-
DirectoryInfo DI =
new
DirectoryInfo(pathDirectory);
-
FileInfo FI =
new
FileInfo(path);
-
if
(FI.Exists) {
-
Console.WriteLine(
"такой файл существует"
);
-
Console.WriteLine(
"файл будет перезаписан"
);
-
Console.WriteLine(
"все данные, которые были в старом файле, будут удалены"
);
-
FI.Create();
-
}
-
else
if
(FI.Exists==
false
& DI.Exists==
false
) {
-
Console.WriteLine(
"такой файл не существует"
);
-
Console.WriteLine(
"такой директории не существует\n"
);
-
//создаем директорию
-
DI.Create();
-
Console.WriteLine(
"директория успешно создана"
);
-
FI.Create();
-
Console.WriteLine(
"файл успешно создан"
);
-
}
-
else
{
-
Console.WriteLine(
"такой файл не существует\n"
);
-
Console.WriteLine(
"файл успешно создан"
);
-
FI.Create();
-
}
-
Console.ReadKey();
-
return
0;
-
}
}
using
System;
//подключить пространство имен
using
System.IO;
class
Program {
-
public
static
int
Main() {
-
string
path =
@"D:\zzz\a.txt"
;
-
string
pathDirectory =
@"D:\zzz"
;
-
DirectoryInfo DI =
new
DirectoryInfo(pathDirectory);
-
FileInfo FI =
new
FileInfo(path);
-
if
(FI.Exists) {
-
Console.WriteLine(
"такой файл существует"
);
-
Console.WriteLine(
"файл будет перезаписан"
);
-
Console.WriteLine(
"все данные, которые были в старом файле, будут удалены"
);
-
FI.Create();
-
}
-
else
if
(FI.Exists==
false
& DI.Exists==
false
) {
-
Console.WriteLine(
"такой файл не существует"
);
-
Console.WriteLine(
"такой директории не существует\n"
);
-
//создаем директорию
-
DI.Create();
-
Console.WriteLine(
"директория успешно создана"
);
-
FI.Create();
-
Console.WriteLine(
"файл успешно создан"
);
-
}
-
else
{
-
Console.WriteLine(
"такой файл не существует\n"
);
-
Console.WriteLine(
"файл успешно создан"
);
-
FI.Create();
-
}
-
Console.ReadKey();
-
return
0;
-
}
}
такой файл не существует
такой директории не существует
директория успешно создана
файл успешно создан
такой директории не существует
директория успешно создана
файл успешно создан
CreateText()
Метод создает файл, записывает в него текст; если файл существует, то удаляет в нем старый текст и записывает новый.
Main.cs
using
System;
//подключить пространство имен
using
System.IO;
class
Program {
-
public
static
int
Main() {
-
string
path =
@"D:\zzz\a.txt"
;
-
string
pathDirectory =
@"D:\zzz"
;
-
DirectoryInfo DI =
new
DirectoryInfo(pathDirectory);
-
FileInfo FI =
new
FileInfo(path);
-
if
(FI.Exists) {
-
using
(StreamWriter sw = FI.CreateText()) {
-
sw.WriteLine(
"Hello World!"
);
-
sw.WriteLine(
"Привет Мир!"
);
-
}
-
Console.WriteLine(
"новый текст успешно записан в файл"
);
-
}
-
else
if
(FI.Exists==
false
& DI.Exists==
false
) {
-
DI.Create();
-
using
(StreamWriter sw = FI.CreateText()) {
-
sw.WriteLine(
"Hello World!"
);
-
sw.WriteLine(
"Привет Мир!"
);
-
}
-
Console.WriteLine(
"новый текст успешно записан в файл"
);
-
}
-
else
{
-
using
(StreamWriter sw = FI.CreateText()) {
-
sw.WriteLine(
"Hello World!"
);
-
sw.WriteLine(
"Привет Мир!"
);
-
}
-
Console.WriteLine(
"новый текст успешно записан в файл"
);
-
}
-
Console.ReadKey();
-
return
0;
-
}
}
using
System;
//подключить пространство имен
using
System.IO;
class
Program {
-
public
static
int
Main() {
-
string
path =
@"D:\zzz\a.txt"
;
-
string
pathDirectory =
@"D:\zzz"
;
-
DirectoryInfo DI =
new
DirectoryInfo(pathDirectory);
-
FileInfo FI =
new
FileInfo(path);
-
if
(FI.Exists) {
-
using
(StreamWriter sw = FI.CreateText()) {
-
sw.WriteLine(
"Hello World!"
);
-
sw.WriteLine(
"Привет Мир!"
);
-
}
-
Console.WriteLine(
"новый текст успешно записан в файл"
);
-
}
-
else
if
(FI.Exists==
false
& DI.Exists==
false
) {
-
DI.Create();
-
using
(StreamWriter sw = FI.CreateText()) {
-
sw.WriteLine(
"Hello World!"
);
-
sw.WriteLine(
"Привет Мир!"
);
-
}
-
Console.WriteLine(
"новый текст успешно записан в файл"
);
-
}
-
else
{
-
using
(StreamWriter sw = FI.CreateText()) {
-
sw.WriteLine(
"Hello World!"
);
-
sw.WriteLine(
"Привет Мир!"
);
-
}
-
Console.WriteLine(
"новый текст успешно записан в файл"
);
-
}
-
Console.ReadKey();
-
return
0;
-
}
}
новый текст успешно записан в файл
AppendText()
Метод дописывает текст в конец файла.
Main.cs
using
System;
//подключить пространство имен
using
System.IO;
class
Program {
-
public
static
int
Main() {
-
string
path =
@"D:\zzz\a.txt"
;
-
string
pathDirectory =
@"D:\zzz"
;
-
DirectoryInfo DI =
new
DirectoryInfo(pathDirectory);
-
FileInfo FI =
new
FileInfo(path);
-
if
(FI.Exists) {
-
using
(StreamWriter sw = FI.AppendText()) {
-
//дописываем текущую дату
-
DateTime DT = DateTime.Now;
-
sw.WriteLine(
"{0:U}"
, DT);
-
}
-
Console.WriteLine(
"новый текст успешно записан в конец файла"
);
-
}
-
else
if
(FI.Exists==
false
& DI.Exists==
false
) {
-
DI.Create();
-
using
(StreamWriter sw = FI.AppendText()) {
-
//дописываем текущую дату
-
DateTime DT = DateTime.Now;
-
sw.WriteLine(
"{0:U}"
, DT);
-
}
-
Console.WriteLine(
"новый текст успешно записан в конец файла"
);
-
}
-
else
{
-
using
(StreamWriter sw = FI.AppendText()) {
-
//дописываем текущую дату
-
DateTime DT = DateTime.Now;
-
sw.WriteLine(
"{0:U}"
, DT);
-
}
-
Console.WriteLine(
"новый текст успешно записан в конец файла"
);
-
}
-
Console.ReadKey();
-
return
0;
-
}
}
using
System;
//подключить пространство имен
using
System.IO;
class
Program {
-
public
static
int
Main() {
-
string
path =
@"D:\zzz\a.txt"
;
-
string
pathDirectory =
@"D:\zzz"
;
-
DirectoryInfo DI =
new
DirectoryInfo(pathDirectory);
-
FileInfo FI =
new
FileInfo(path);
-
if
(FI.Exists) {
-
using
(StreamWriter sw = FI.AppendText()) {
-
//дописываем текущую дату
-
DateTime DT = DateTime.Now;
-
sw.WriteLine(
"{0:U}"
, DT);
-
}
-
Console.WriteLine(
"новый текст успешно записан в конец файла"
);
-
}
-
else
if
(FI.Exists==
false
& DI.Exists==
false
) {
-
DI.Create();
-
using
(StreamWriter sw = FI.AppendText()) {
-
//дописываем текущую дату
-
DateTime DT = DateTime.Now;
-
sw.WriteLine(
"{0:U}"
, DT);
-
}
-
Console.WriteLine(
"новый текст успешно записан в конец файла"
);
-
}
-
else
{
-
using
(StreamWriter sw = FI.AppendText()) {
-
//дописываем текущую дату
-
DateTime DT = DateTime.Now;
-
sw.WriteLine(
"{0:U}"
, DT);
-
}
-
Console.WriteLine(
"новый текст успешно записан в конец файла"
);
-
}
-
Console.ReadKey();
-
return
0;
-
}
}
новый текст успешно записан в конец файла
Delete()
Метод удаляет файл, без возможности восстановления.
Main.cs
using
System;
//подключить пространство имен
using
System.IO;
class
Program {
-
public
static
int
Main() {
-
string
path =
@"D:\zzz\a.txt"
;
-
FileInfo FI =
new
FileInfo(path);
-
if
(FI.Exists) {
-
FI.Delete();
-
Console.WriteLine(
"файл успешно удален"
);
-
}
-
else
{
-
Console.WriteLine(
"удалить не возможно, такой файл не существует"
);
-
}
-
Console.ReadKey();
-
return
0;
-
}
}
using
System;
//подключить пространство имен
using
System.IO;
class
Program {
-
public
static
int
Main() {
-
string
path =
@"D:\zzz\a.txt"
;
-
FileInfo FI =
new
FileInfo(path);
-
if
(FI.Exists) {
-
FI.Delete();
-
Console.WriteLine(
"файл успешно удален"
);
-
}
-
else
{
-
Console.WriteLine(
"удалить не возможно, такой файл не существует"
);
-
}
-
Console.ReadKey();
-
return
0;
-
}
}
файл успешно удален
CopyTo(path, bool)
Метод копирует существующий файл в новый файл, если true — разрешает перезапись старого файла, если false — не разрешает.
Main.cs
using
System;
//подключить пространство имен
using
System.IO;
class
Program {
-
public
static
int
Main() {
-
//файл, из которого будет скопирован текст
-
string
pathFrom =
@"D:\zzz\a.txt"
;
-
//файл, в который будет скопирован текст
-
string
pathTo =
@"D:\zzz\b.txt"
;
-
FileInfo FFrom =
new
FileInfo(pathFrom);
-
FileInfo FTo =
new
FileInfo(pathTo);
-
if
(FFrom.Exists & FTo.Exists) {
-
FFrom.CopyTo(pathTo,
true
);
-
Console.WriteLine(
"копирование успешно выполнено"
);
-
}
-
else
if
(FFrom.Exists ==
false
) {
-
Console.WriteLine(
"копирование не возможно, файл-источник отсутствует"
);
-
}
-
else
if
(FTo.Exists ==
false
) {
-
string
pathToDirectory =
@"D:\zzz"
;
-
if
(Directory.Exists(pathTo) ==
false
) {
-
Directory.CreateDirectory(pathToDirectory);
-
using
(FileStream fs = FTo.Create()) {}
-
FFrom.CopyTo(pathTo,
true
);
-
Console.WriteLine(
"копирование успешно выполнено"
);
-
}
-
else
{
-
using
(FileStream fs = FTo.Create()) { }
-
FFrom.CopyTo(pathTo,
true
);
-
Console.WriteLine(
"копирование успешно выполнено"
);
-
}
-
}
-
Console.ReadKey();
-
return
0;
-
}
}
using
System;
//подключить пространство имен
using
System.IO;
class
Program {
-
public
static
int
Main() {
-
//файл, из которого будет скопирован текст
-
string
pathFrom =
@"D:\zzz\a.txt"
;
-
//файл, в который будет скопирован текст
-
string
pathTo =
@"D:\zzz\b.txt"
;
-
FileInfo FFrom =
new
FileInfo(pathFrom);
-
FileInfo FTo =
new
FileInfo(pathTo);
-
if
(FFrom.Exists & FTo.Exists) {
-
FFrom.CopyTo(pathTo,
true
);
-
Console.WriteLine(
"копирование успешно выполнено"
);
-
}
-
else
if
(FFrom.Exists ==
false
) {
-
Console.WriteLine(
"копирование не возможно, файл-источник отсутствует"
);
-
}
-
else
if
(FTo.Exists ==
false
) {
-
string
pathToDirectory =
@"D:\zzz"
;
-
if
(Directory.Exists(pathTo) ==
false
) {
-
Directory.CreateDirectory(pathToDirectory);
-
using
(FileStream fs = FTo.Create()) {}
-
FFrom.CopyTo(pathTo,
true
);
-
Console.WriteLine(
"копирование успешно выполнено"
);
-
}
-
else
{
-
using
(FileStream fs = FTo.Create()) { }
-
FFrom.CopyTo(pathTo,
true
);
-
Console.WriteLine(
"копирование успешно выполнено"
);
-
}
-
}
-
Console.ReadKey();
-
return
0;
-
}
}
копирование успешно выполнено
Replace()
Метод заменяет содержимое указанного файла, содержимым другого файла, другой файл удаляется.
Main.cs
using
System;
//подключить пространство имен
using
System.IO;
class
Program {
-
public
static
int
Main() {
-
//путь к файлу, содержимое которого будет изменено
-
string
pathChange =
@"D:\zzz\a.txt"
;
-
//путь к файлу, из которого будет происходить замена, файл будет удален
-
string
pathDelete =
@"D:\zzz\b.txt"
;
-
FileInfo FChange =
new
FileInfo(pathChange);
-
FileInfo FDelete =
new
FileInfo(pathDelete);
-
if
(FChange.Exists & FDelete.Exists) {
-
//null - не создавать резервную копию
-
//true - игнорировать ошибки
-
FDelete.Replace(pathChange,
null
,
true
);
-
Console.WriteLine(
"замена содержимого файла произведена успешно"
);
-
}
-
else
if
(FDelete.Exists ==
false
) {
-
Console.WriteLine(
"замена содержимого файла не возможно, файл-источник отсутствует"
);
-
}
-
else
if
(FChange.Exists ==
false
) {
-
string
FChangeDirectory =
@"D:\zzz"
;
-
if
(Directory.Exists(FChangeDirectory) ==
false
) {
-
Directory.CreateDirectory(FChangeDirectory);
-
using
(FileStream fs = FChange.Create()) { }
-
FDelete.Replace(pathChange,
null
,
true
);
-
Console.WriteLine(
"замена содержимого файла произведена успешно"
);
-
}
-
else
{
-
using
(FileStream fs = FChange.Create()) { }
-
FDelete.Replace(pathChange,
null
,
true
);
-
Console.WriteLine(
"замена содержимого файла произведена успешно"
);
-
}
-
}
-
Console.ReadKey();
-
return
0;
-
}
}
using
System;
//подключить пространство имен
using
System.IO;
class
Program {
-
public
static
int
Main() {
-
//путь к файлу, содержимое которого будет изменено
-
string
pathChange =
@"D:\zzz\a.txt"
;
-
//путь к файлу, из которого будет происходить замена, файл будет удален
-
string
pathDelete =
@"D:\zzz\b.txt"
;
-
FileInfo FChange =
new
FileInfo(pathChange);
-
FileInfo FDelete =
new
FileInfo(pathDelete);
-
if
(FChange.Exists & FDelete.Exists) {
-
//null - не создавать резервную копию
-
//true - игнорировать ошибки
-
FDelete.Replace(pathChange,
null
,
true
);
-
Console.WriteLine(
"замена содержимого файла произведена успешно"
);
-
}
-
else
if
(FDelete.Exists ==
false
) {
-
Console.WriteLine(
"замена содержимого файла не возможно, файл-источник отсутствует"
);
-
}
-
else
if
(FChange.Exists ==
false
) {
-
string
FChangeDirectory =
@"D:\zzz"
;
-
if
(Directory.Exists(FChangeDirectory) ==
false
) {
-
Directory.CreateDirectory(FChangeDirectory);
-
using
(FileStream fs = FChange.Create()) { }
-
FDelete.Replace(pathChange,
null
,
true
);
-
Console.WriteLine(
"замена содержимого файла произведена успешно"
);
-
}
-
else
{
-
using
(FileStream fs = FChange.Create()) { }
-
FDelete.Replace(pathChange,
null
,
true
);
-
Console.WriteLine(
"замена содержимого файла произведена успешно"
);
-
}
-
}
-
Console.ReadKey();
-
return
0;
-
}
}
замена содержимого файла произведена успешно
MoveTo(path)
Метод перемещает файл по заданному пути.
Main.cs
using
System;
//подключить пространство имен
using
System.IO;
class
Program {
-
public
static
int
Main() {
-
//путь, откуда файл будет перемещен
-
string
pathFrom =
@"D:\zzz\a.txt"
;
-
//путь, куда файл будет перемещен
-
string
pathTo =
@"D:\uuu\a.txt"
;
-
FileInfo FFrom =
new
FileInfo(pathFrom);
-
FileInfo FTo =
new
FileInfo(pathTo);
-
if
(FFrom.Exists) {
-
if
(Directory.Exists(
@"D:\uuu"
) ==
false
) {
-
Directory.CreateDirectory(
@"D:\uuu"
);
-
FFrom.MoveTo(pathTo);
-
Console.WriteLine(
"перемещение файла выполнено успешно"
);
-
}
-
else
{
-
FFrom.MoveTo(pathTo);
-
Console.WriteLine(
"перемещение файла выполнено успешно"
);
-
}
-
}
-
Console.ReadKey();
-
return
0;
-
}
}
using
System;
//подключить пространство имен
using
System.IO;
class
Program {
-
public
static
int
Main() {
-
//путь, откуда файл будет перемещен
-
string
pathFrom =
@"D:\zzz\a.txt"
;
-
//путь, куда файл будет перемещен
-
string
pathTo =
@"D:\uuu\a.txt"
;
-
FileInfo FFrom =
new
FileInfo(pathFrom);
-
FileInfo FTo =
new
FileInfo(pathTo);
-
if
(FFrom.Exists) {
-
if
(Directory.Exists(
@"D:\uuu"
) ==
false
) {
-
Directory.CreateDirectory(
@"D:\uuu"
);
-
FFrom.MoveTo(pathTo);
-
Console.WriteLine(
"перемещение файла выполнено успешно"
);
-
}
-
else
{
-
FFrom.MoveTo(pathTo);
-
Console.WriteLine(
"перемещение файла выполнено успешно"
);
-
}
-
}
-
Console.ReadKey();
-
return
0;
-
}
}
перемещение файла выполнено успешно
Open(mode, access, share)
Метод открывает файл и задает режим, доступ, параметр доступа.
Метод возвращает объект FileStream, работающий с байтовыми потоками.
Метод возвращает объект FileStream, работающий с байтовыми потоками.
FileMode |
|
CreateNew | должен быть создан новый файл, если файл существует, происходит исключение |
Create | должен быть создан новый файл, если файл существует, он будет перезаписан |
Open | открывает существующий файл, если файл не существует, происходит исключение |
OpenOrCreate | открывает существующий файл, если файл не существует, создается новый файл |
Truncate | открывает существующий файл, если файл уже открыт, он усекается, чтобы его размер стал равен 0 байтов |
Append | открывает существующий файл, устанавливает курсор в конец файла, если файл не существует, создает новый; используется только с перечислением FileAccess.Write |
FileAccess |
|
Read | доступ только для чтения из файла |
Write | доступ только для записи в файл |
ReadWrite | доступ для чтения и записи в файл |
FileShare |
|
None | не разрешает совместное использование файла нескольким процессам |
Read | разрешает открытие файла для чтения нескольким процессам |
Write | разрешает открытие файла для записи нескольким процессам |
ReadWrite | разрешает открытие файла для чтения и записи нескольким процессам |
Delete | разрешает удаление файла нескольким процессам |
Inheritable | разрешает наследование дескриптора файла дочерними процессами |
Main.cs
using
System;
//подключить пространство имен
using
System.IO;
//подключить пространство имен для кодировки
using
System.Text;
class
Program {
-
public
static
int
Main() {
-
//путь
-
string
path =
@"D:\zzz\a.txt"
;
-
//создаем объект
-
FileInfo FI =
new
FileInfo(path);
-
//если файл существует
-
if
(FI.Exists) {
-
//работа только с байтовым потоком
-
using
(FileStream fs = FI.Open(FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.ReadWrite)) {
-
//задаем кодировку
-
UTF8Encoding utf8code =
new
UTF8Encoding(
false
);
-
//записываем в массив байтов информацию
-
byte
[] arra = utf8code.GetBytes(
"Hello World!\nПривет Мир!\n"
);
-
//записываем в файл
-
fs.Write(arra, 0, arra.Length);
-
//желательно очистить буфер
-
fs.Flush();
-
Console.WriteLine(
"текст успешно записан в файл"
);
-
}
-
}
-
//если файл не существует
-
else
{
-
//путь
-
string
pathDirectory =
@"D:\zzz"
;
-
//если существует директория
-
if
(Directory.Exists(pathDirectory)) {
-
//работа только с байтовым потоком
-
using
(FileStream fs = FI.Open(FileMode.CreateNew, FileAccess.ReadWrite, FileShare.ReadWrite)) {
-
//задаем кодировку
-
UTF8Encoding utf8code =
new
UTF8Encoding(
false
);
-
//записываем в массив байтов информацию
-
byte
[] arra = utf8code.GetBytes(
"Hello World!\nПривет Мир!\n"
);
-
//записываем в файл
-
fs.Write(arra, 0, arra.Length);
-
//желательно очистить буфер
-
fs.Flush();
-
Console.WriteLine(
"текст успешно записан в файл"
);
-
}
-
}
-
//если не существует директория
-
else
{
-
//создаем директорию
-
Directory.CreateDirectory(pathDirectory);
-
//работа только с байтовым потоком
-
using
(FileStream fs = FI.Open(FileMode.CreateNew, FileAccess.ReadWrite, FileShare.ReadWrite)) {
-
//задаем кодировку
-
UTF8Encoding utf8code =
new
UTF8Encoding(
false
);
-
//записываем в массив байтов информацию
-
byte
[] arra = utf8code.GetBytes(
"Hello World!\nПривет Мир!\n"
);
-
//записываем в файл
-
fs.Write(arra, 0, arra.Length);
-
//желательно очистить буфер
-
fs.Flush();
-
Console.WriteLine(
"текст успешно записан в файл"
);
-
}
-
}
-
}
-
Console.ReadKey();
-
return
0;
-
}
}
using
System;
//подключить пространство имен
using
System.IO;
//подключить пространство имен для кодировки
using
System.Text;
class
Program {
-
public
static
int
Main() {
-
//путь
-
string
path =
@"D:\zzz\a.txt"
;
-
//создаем объект
-
FileInfo FI =
new
FileInfo(path);
-
//если файл существует
-
if
(FI.Exists) {
-
//работа только с байтовым потоком
-
using
(FileStream fs = FI.Open(FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.ReadWrite)) {
-
//задаем кодировку
-
UTF8Encoding utf8code =
new
UTF8Encoding(
false
);
-
//записываем в массив байтов информацию
-
byte
[] arra = utf8code.GetBytes(
"Hello World!\nПривет Мир!\n"
);
-
//записываем в файл
-
fs.Write(arra, 0, arra.Length);
-
//желательно очистить буфер
-
fs.Flush();
-
Console.WriteLine(
"текст успешно записан в файл"
);
-
}
-
}
-
//если файл не существует
-
else
{
-
//путь
-
string
pathDirectory =
@"D:\zzz"
;
-
//если существует директория
-
if
(Directory.Exists(pathDirectory)) {
-
//работа только с байтовым потоком
-
using
(FileStream fs = FI.Open(FileMode.CreateNew, FileAccess.ReadWrite, FileShare.ReadWrite)) {
-
//задаем кодировку
-
UTF8Encoding utf8code =
new
UTF8Encoding(
false
);
-
//записываем в массив байтов информацию
-
byte
[] arra = utf8code.GetBytes(
"Hello World!\nПривет Мир!\n"
);
-
//записываем в файл
-
fs.Write(arra, 0, arra.Length);
-
//желательно очистить буфер
-
fs.Flush();
-
Console.WriteLine(
"текст успешно записан в файл"
);
-
}
-
}
-
//если не существует директория
-
else
{
-
//создаем директорию
-
Directory.CreateDirectory(pathDirectory);
-
//работа только с байтовым потоком
-
using
(FileStream fs = FI.Open(FileMode.CreateNew, FileAccess.ReadWrite, FileShare.ReadWrite)) {
-
//задаем кодировку
-
UTF8Encoding utf8code =
new
UTF8Encoding(
false
);
-
//записываем в массив байтов информацию
-
byte
[] arra = utf8code.GetBytes(
"Hello World!\nПривет Мир!\n"
);
-
//записываем в файл
-
fs.Write(arra, 0, arra.Length);
-
//желательно очистить буфер
-
fs.Flush();
-
Console.WriteLine(
"текст успешно записан в файл"
);
-
}
-
}
-
}
-
Console.ReadKey();
-
return
0;
-
}
}
текст успешно записан в файл