MCTS-536 - I/O (Namespace System.IO)Todas as classes estao dentro do assembly System.IOPrincipais classes que herdam de FileSystemInfo:FileInfo: Trata de arquivosDirectoryInfo: Trata DiretoriosPrivateInfo: Trata de DriversA classe FileSystemInfoPropriedadesAtributes: Atribui ou recupera os atributos do arquivo ou diretorioCreation Time: Atribui ou recupera a data de criacao do arquivo ou diretorio.Exists: Testa a existenciaExtension: Recupera a extesao do arquivo.Fullname: Recupera o caminho do arquivoLastAccessTime: Atribui ou recupera a hora do ultimo acesso ao arquivo ou diretorio.LastWriteTime: Atribui ou recupera a hora da ultima escrita ao arquivo ou diretorio.Name: Recupera o nome do arquivo + nome do diretorio paiMetodos do FileSystemInfoDelete: Apaga o arquivo ou diretorioRefresh: AtualizaA classe FileInfoManipula ArquivosSeu construtor tem a localizacao do arquivo com parametro Propriedades Directory: Pega o DirectoryInfo, que representa o diretorio onde esta o arquivoDirectoryName: Nome do diretorio onde esta o arquivoisReadOnly: Atribui ou recupera o valor somente leitura de um arquivoLenght: O tamanho do arquivo em bytesMetodos AppendText: Adiciona um texto ao arquivo via StreamcopyTo: Copia um arquivo para um destino especificoCreate: Cria um arquivo apartir de uma variavel fileinfo. createText:Cria um novo arquivo para ser escritoDecrypt: Tira EncriptacaoEncrypt: CriptografaMoveto:Move para um destino especificoOpen: Abre com o privilegios desejados e para uma acao especifica OpenRead:Abre somente para leituraOpenText: Abre e retorna um stream para leituraOpenWrite: Abre apenas para escritaReplace: Troca um arquivo por outro arquivo.A classe DirectoryInfoPropriedadesParent: Informacoes sobre o diretorio PaiRoot:Uma string representando a raizMetodosCreate: Cria um diretorioCreateSubDirectory:Cria um subdiretorio.GetDirectories: Array que representa os subdiretoriosGetFile: Array do tipo fileinfo, com todos os arquivosGetFileSystemInfo: Array do tipo FileSystemInfo representando todos os arquivos e subdiretorios.A classe DriveInfoClassPropriedadeAvaiableFreeSpace: Espaco disponivelDriveFormat: NTFS ou FAT32DriveType: O tipo do Drive, retorna um enum DriveTypeDriveTypeCD-ROMFixedNetworkNoRootDirectoryRAMRemovableUnknown A classe RegexisMatch: Compara a string com sua regraSempre precedida por @WildCards: sao caracteres especiais como *,+,? Que facilitam a procura pelo texto desejadoAlguns codigos importantes^ - inicio de string$ - fim da string\d somente nunericos{n} quantidade de caracteres\b o mesmo que *palavra\B o mesmo que palavra** - com na procura por arquivos+ - parece com * mas tem que aparecer uma vez? como na procura por arquivos[i,j] range de valores numericos\s espaco vazios\S espacos ocupados| - ou\k compara o posterior com o anterior\w 1 caracter<char> - guarda a expressao na variavel charAs expressoes regulares aceitam um formato em seu construtor atraves do enum RegexOptionO Enum RegexOptionNone:nadaIgnoreCase: Nao e case-sensitiveMultiline:^ e $ significam o inicio e o fim da linhaExplicitCapture: So pega o que foi explicitado, atraves dos <>Compilable: Sera compilada gerando um assemblySingleline:Faz o ponto (.), valer qualquer coisaIgnorePatternWhiteSpace: Exclui o espaco em brancoRighttoLeft: Le da direita para a esquerdaCulturalInvariant: Ignora a culturaExtraindo as informacoes necessariasUtilizando-se as expressoes regulares entre parentesesO metodo Regex.matchAcessando os dados atraves do metodo Match.GroupsTrocando caracteres utilizados utilizando expressoes regularesCaptura com ?<char> e troca com $<char> Sao ambientes preparados para rodar aplicacoes externas com seguranca, um exemplo e o IIS, que roda um assembly(site) ao mesmo empo com varios processos diferentes, um para cada um dos usuarios diferentes. Outro e o IE, que roda varios assemblies ao mesmo tempo separadamente para cada um dos sites. Basicamente trata-se da separacao de recursos por assemblyA Classe AppDomainactivationContext: