|
|
(5 intermediate revisions by the same user not shown) |
Line 1: |
Line 1: |
| {{NAVPO}}
| | #REDIRECT [[ist:Entradas e Saídas em Java]] |
| <!--{{TOCright}}-->
| |
| Mecanismos de entradas e saídas em Java. A classe File. Streams, Readers, Writers. Composição de canais. Acesso aleatório a ficheiros. Serialização de tipos primitivos e de objectos: a interface Serializable. Elementos não serializáveis: a palavra chave transient. Excepções associadas a entradas e saídas.
| |
| | |
| == Mecanismos de Entrada e Saída de Dados ==
| |
| | |
| Mecanismos de entradas e saídas em Java. A classe File. Streams, Readers, Writers. Composição de canais. Acesso aleatório a ficheiros.
| |
| | |
| === Exemplo: Leitor1 ===
| |
| | |
| <java5>
| |
| public class Leitor1 {
| |
| | |
| public static void main(String[] args) throws IOException {
| |
| | |
| //------------------------------------------------
| |
| // Leitura de linhas
| |
| | |
| BufferedReader in = new BufferedReader(new FileReader("Leitor1.java"));
| |
| String s, s2 = new String();
| |
| while((s = in.readLine()) != null) s2 += s + "\n";
| |
| in.close();
| |
| System.out.print(s2);
| |
| | |
| //------------------------------------------------
| |
| // Leitura do System.in (a.k.a. stdin)
| |
| | |
| BufferedReader stdin = new BufferedReader(new InputStreamReader(System.in));
| |
| System.out.print("Enter a line: ");
| |
| System.out.println(stdin.readLine());
| |
| | |
| }
| |
| }
| |
| </java5>
| |
| | |
| === Exemplo: Leitor2 ===
| |
| | |
| <java5>
| |
| public class Leitor2 {
| |
| | |
| public static void main(String[] args) throws IOException {
| |
| | |
| String s = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
| |
| | |
| //------------------------------------------------
| |
| // Leitura de memória (caracteres Unicode: 16 bits)
| |
| StringReader strin = new StringReader(s);
| |
| int c;
| |
| while((c = strin.read()) != -1) System.out.println((char)c);
| |
| | |
| //------------------------------------------------
| |
| // Leitura formatada de memória (bytes: 8 bits)
| |
| try {
| |
| | |
| byte ba[] = s.getBytes();
| |
| DataInputStream memin = new DataInputStream(new ByteArrayInputStream(ba));
| |
| while(true) System.out.print((char)memin.readByte());
| |
| | |
| }
| |
| catch(EOFException e) { System.err.println("... já está!"); }
| |
|
| |
| }
| |
| }
| |
| </java5>
| |
| | |
| === Exemplo: Escrita em Ficheiro (Escritor1) ===
| |
| | |
| <java5>
| |
| public class Escritor1 {
| |
| | |
| public static void main(String[] args) throws IOException {
| |
| | |
| try {
| |
| //String s = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
| |
| //BufferedReader in = new BufferedReader(new StringReader(s));
| |
| | |
| BufferedReader in = new BufferedReader(new FileReader("Escritor1.java"));
| |
| | |
| PrintWriter out =
| |
| new PrintWriter(new BufferedWriter(new FileWriter("Escritor1.out")));
| |
| | |
| int lineCount = 1;
| |
| while((s = in.readLine()) != null ) out.printf("%3d: %s\n", lineCount++, s);
| |
| out.close();
| |
| | |
| }
| |
| catch(EOFException e) { System.err.println("... já está!"); }
| |
| | |
| }
| |
| | |
| }
| |
| </java5>
| |
| | |
| == Exemplos ==
| |
| | |
| * [[Entradas e Saídas em Java/Exemplo 03: Ficheiro de Acesso Aleatório|Exemplo 03: Ficheiro de Acesso Aleatório]]
| |
| * [[Entradas e Saídas em Java/Exemplo 04: Serialização de Objectos|Exemplo 04: Serialização de Objectos]] - Zorg e Zog
| |
| | |
| == Exercícios ==
| |
| | |
| * [[Entradas e Saídas em Java/Exercício 01: Leitura de Ficheiros de Texto|Exercício 01: Leitura de Ficheiros de Texto]]
| |
| * [[Entradas e Saídas em Java/Exercício 02: Leitura de Ficheiro Binário|Exercício 02: Leitura de Ficheiro Binário]]
| |
| * [[Entradas e Saídas em Java/Exercício 03: Serialização de Objectos|Exercício 03: Serialização de Objectos]]
| |
| | |
| [[category:Ensino]]
| |
| [[category:PO]]
| |
| [[category:PO Exemplos]]
| |
| [[category:Java]]
| |