A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

William Ivanski Curso de Programação C#. Sumário  Exceções  Conceito de Arquivo  Arquivos de Texto  Codificações de Caracteres  Arquivos CSV  Arquivos.

Apresentações semelhantes


Apresentação em tema: "William Ivanski Curso de Programação C#. Sumário  Exceções  Conceito de Arquivo  Arquivos de Texto  Codificações de Caracteres  Arquivos CSV  Arquivos."— Transcrição da apresentação:

1 William Ivanski Curso de Programação C#

2 Sumário  Exceções  Conceito de Arquivo  Arquivos de Texto  Codificações de Caracteres  Arquivos CSV  Arquivos Binários  Explorador de Arquivos

3 Exceções  Exceções (Exceptions) são problemas ou situações que podem ocorrer durante o processo  Exemplos de exceções: Formato incorreto no Parse Divisão por zero Arquivo não encontrado  “Unhandled Exception” (exceção não tratada) ocorre quando o programador não previu uma dessas situações  O comando try catch finally é usado para capturar e tratar exceções

4 Exceções  try Bloco que contém o código que pode gerar erro  catch (tipo da exceção) Bloco que define o que fazer caso a exceção seja capturada Pode ter vários blocos catch, um para cada tipo de exceção  finally Bloco opcional, e quando presente é executado sempre, tendo ocorrido ou não a exceção É usado para liberar recursos, por exemplo fechar arquivos abertos

5 Exceções  Todas as exceções derivam da classe System.Exception  Podemos criar exceções customizadas criando classes que derivam da classe System.Exception  Para disparar uma exceção customizada, usamos o comando throw  Toda exceção disparada com throw deve ser capturada e tratada com try catch finally  Podemos capturar uma exceção e, no bloco catch, relançá-la com throw

6 Conceito de Arquivo  Até agora temos manipulado dados que existem apenas em memória: Quando o programa inicia, a informação ainda não existe A informação é criada e existe apenas enquanto o programa está em execução A informação se perde quando o programa encerra  É necessário trabalhar com uma forma de armazenamento durável

7 Conceito de Arquivo  Um arquivo é um recurso de armazenamento de informação  Um arquivo é armazenado em memória não-volátil (disco rígido, pendrive, etc)  Um arquivo existe antes, durante e depois da execução do processo  Um arquivo pode existir até mesmo depois de desligar e ligar o computador  Um arquivo pode ser transmitido para outros processos, computadores e pessoas

8 Conceito de Arquivo  Um arquivo tem os seguintes atributos: Nome Caminho (relativo ou absoluto) Extensão Tipo do conteúdo (texto ou binário) Conteúdo Tamanho Permissões

9 Arquivos de Texto  Para leitura de arquivos texto, usa-se a classe System.IO.StreamReader  Essa classe oferece os seguintes métodos de leitura: int Read(): Lê o próximo caractere e avança a posição atual no arquivo; int Peek(): Lê o próximo caractere sem avançar a posição atual no arquivo string ReadLine(): Lê a próxima linha; string ReadToEnd(): Lê o conteúdo todo do arquivo

10 Arquivos de Texto  Para escrita de arquivos texto, usa-se a classe System.IO.StreamWriter  Essa classe é usada para criar arquivos e também adicionar texto a arquivos existentes  Essa classe oferece os seguintes métodos de escrita: void Write() void WriteLine() void Flush()

11 Codificações de Caracteres  Codificações de caracteres (encodings) ou conjuntos de caracteres (character sets ou charsets) são padronizações de representação de caracteres  A codificação é a mesma para o arquivo inteiro  Toda vez que você escreve um arquivo de texto, está usando uma codificação O padrão é UTF-8, usada por 80% do mundo

12 Codificações de Caracteres  Ao ler um arquivo de texto, não há como saber a codificação  Existem algumas técnicas para tentar ajudar a descobrir: Inferência estatística baseada na frequência de caracteres de cada idioma do mundo BOM (Byte Order Mark)  Se não souber a codificação do arquivo de texto (ou de qualquer string), não há como manipulá-lo

13 Codificações de Caracteres  Unicode é uma padronização mundial que mapeia todos os caracteres de todos os alfabetos de todos os idiomas e dialetos do mundo inteiro  Já tem mais de 107 mil caracteres  Unicode não é uma codificação de caracteres (algumas pessoas associam Unicode a UTF-16)  Devemos usar codificações baseadas em Unicode, como a UTF-8

14 Codificações de Caracteres  Exemplos de codificações: ASCII ANSI Windows-1252 ISO-8859-1 ISO-8859-15 UTF-16 UTF-32 UTF-8 UTF-7

15 Arquivos CSV  CSV = Comma-Separated Values (valores separados por vírgula)  Formato de arquivo de texto usado para armazenar dados como uma tabela ou planilha  Cada linha do arquivo é um registro  Cada registro contém valores separados por vírgula, ponto-e-vírgula, pipe, etc  Pode ser manipulado pelo Microsoft Excel, OpenOffice Calc, etc

16 Arquivos Binários  Para poder manipular arquivos binários, precisamos de System.IO.FileStream  Para instanciar, precisamos escolher uma opção de System.IO.FileMode: Append Create CreateNew Open OpenOrCreate Truncate

17 Arquivos Binários  Para escrita de arquivos binários, usa- se a classe System.IO.BinaryWriter  Essa classe é usada para criar arquivos e também adicionar dados a arquivos existentes  Para escrever dados, usamos o método Write. Para atualizar, usamos o método Flush  Cada classe precisa saber como escrever e ler na ordem correta

18 Arquivos Binários  Para leitura de arquivos binários, usa-se a classe System.IO.BinaryReader  Essa classe oferece vários métodos de leitura, por exemplo: ReadBoolean ReadChar ReadInt32 ReadString ReadDouble

19 Explorador de Arquivos  Com o auxílio de algumas classes, podemos obter informações sobre: Um único arquivo Um único diretório Todos os arquivos e diretórios contidos em um determinado diretório  Isso é muito útil, por exemplo, para saber se todos os arquivos necessários pelo seu programa existem e na estrutura correta

20 Explorador de Arquivos  A classe System.IO.FileInfo é usada para obter informações sobre um arquivo, por exemplo: Exists Extension FullName Length CreationTime, LastAccessTime, LastWriteTime DirectoryName Directory

21 Explorador de Arquivos  A classe estática System.IO.File contém várias funções úteis, por exemplo: Exists Copy, Delete, Move GetCreationTime, GetLastAccessTime, GetLastWriteTime WriteAllText, AppendAllText ReadAllText, ReadAllLines

22 Explorador de Arquivos  A classe System.IO.DirectoryInfo é usada para obter informações sobre um diretório, por exemplo: Exists FullName CreationTime, LastAccessTime, LastWriteTime Parent, Root GetFiles, GetDirectories

23 Explorador de Arquivos  A classe estática System.IO.Directory contém várias funções úteis, por exemplo: Exists CreateDirectory, Delete, Move GetCreationTime, GetLastAccessTime, GetLastWriteTime GetFiles, GetDirectories, GetLogicalDrives


Carregar ppt "William Ivanski Curso de Programação C#. Sumário  Exceções  Conceito de Arquivo  Arquivos de Texto  Codificações de Caracteres  Arquivos CSV  Arquivos."

Apresentações semelhantes


Anúncios Google