logo search
CSharp_Prog_Guide

Ввод-вывод и безопасность

При использовании классов пространства имен System.IO для предоставления доступа должны быть выполнены требования безопасности операционной системы, такие как списки управления доступом. Это требование дополняет остальные требования FileIOPermission.

Примечание.

Списком управления доступом можно управлять на программном уровне.

Внимание!

По умолчанию политика безопасности для Интернета и интрасетей запрещает доступ к файлам. Поэтому при создании кода, который будет передаваться через Интернет, обычные классы ввода/вывода неизолированного хранения не используются. Вместо этого используйте Изолированное хранение.

Внимание!

Когда открыт файловый или сетевой поток, проверка безопасности производится только во время создания потока. Поэтому будьте внимательны во время передачи этих потоков коду с меньшим уровнем доверия или доменам приложений.

How to: Create a Directory Listing

The following code example shows how to use the I/O classes to create a listing of all files with the extension ".exe" in a directory.

Example

using System;

using System.IO;

class DirectoryLister

{

public static void Main(String[] args)

{

string path = ".";

if (args.Length > 0)

{

if (File.Exists(args[0]))

{

path = args[0];

}

else

{

Console.WriteLine("{0} not found; using current directory:",

args[0]);

}

}

DirectoryInfo dir = new DirectoryInfo(path);

foreach (FileInfo f in dir.GetFiles("*.exe"))

{

String name = f. Name;

long size = f.Length;

DateTime creationTime = f.CreationTime;

Console.WriteLine("{0,-12:N0} {1,-20:g} {2}", size,

creationTime, name);

}

Console.ReadKey();

}

}