FileOutputStream: Subclasse, canal para escrever dados
etapa:
1. Obtenha o arquivo de destino
2. Crie um canal (se não houver arquivo de destino no formulário original, um será criado automaticamente)
3. Escreva dados para escrever ()
4. Liberte os recursos
Perceber:
(1) Se o arquivo de destino não existir, você criará um arquivo de destino
(2) Se o arquivo de destino existir, primeiro limpe os dados dentro e depois escreva os dados
(3) Se você deseja escrever dados sobre os dados originais, use o construtor ao criar o canal:
OutputStream (arquivo de arquivo, apêndice booleano), se o valor booleano for verdadeiro, tudo bem
(4) Escreva dados usando o método Write (int a). Embora receba o INT, ele realmente possui apenas um byte de dados.
(A operação está nos oito dígitos inferiores e os outros são jogados fora)
// Alguns pacotes serão importados automaticamente: importar java.io.file; importar java.io.fileOutputStream; importar java.io.ioException;
// Método um public estático void writedata () lança ioexception {// 1. Encontre o arquivo de arquivo de destino Arquivo = novo arquivo ("c: //users//bigerf//desktop//folder//writEtest.java"); // 2. Crie um canal FileOutputStream OutputStream = new FileOutputStream (FILE); // 3. Comece a escrever dados, int a = 10; // int tipo 4 bytes outputStream.write (a); // Observe que apenas um byte pode ser emitido em um horário outputStream.Write ('B'); // char tipo outputStream.write (5); // 0000-0000 0000-0000 0000-0001 1111-1111 == 511INT B = 511; // superior a oito (9 bits) outputStream.write (b); // O resultado real é 255, mas não int c = 63; // pequeno que oito (6 bits) outputStream.write (c); // Código de lixo // 4. Feche o recurso outputStream.close ();} // Método 2 public static void writedata2 () lança ioexception {// 1. Encontre o arquivo de arquivo de destino Arquivo = novo arquivo ("c: //users//bigerf//desktop//folder//writEtest2.java"); // 2. Crie um canal (se não houver arquivo no caminho, o arquivo criado nesta etapa) // new FileOutputStream (arquivo, true); /true significa escrever texto no texto original (ou será limpo primeiro e depois escrito) FileOutputStream outputStream = new FileOutputStream (arquivo, true); // 3. Crie uma matriz de byte string str = "hello word"; // altere a string em uma matriz de bytes byte [] b = str.getBytes (); // 4. Escreva o Data OutputStream.Write (B); // Hello Word // 5. Feche o recurso outputStream.close ();}Momo disse:
O fluxo de entrada e o fluxo de saída podem copiar arquivos; portanto, tente implementá -los.
(Primeiro copie os dados do arquivo de caminho e escreva -o para a matriz de bytes e depois escreva o arquivo de caminho da matriz de bytes)