[RESOLVIDO] InputStream / OutputStream 'Sem' arquivo

6 respostas
S

Boa tarde.

Estou com uma dúvida um tanto quanto ‘contraditória’.
Preciso retornar um Inputstream, gostaria de saber se é possível criar um sem ser FileInputStream
e sem ter que implementar com o write().

Segue código de como estou fazendo. O que eu quero é não ter que criar o arquivo ‘temporário’ .temp.

...
FileOutputStream saida = new FileOutputStream(".temp");
PrintStream out = new PrintStream(saida);
String s = stripper.getText(doc);
		
out.println(s);

out.flush();
out.close();
			
InputStream outFile = new FileInputStream(".temp");
...

Grato,
Filipe D.

6 Respostas

M

Bem… a melhor forma seria criar um OutputStream mesmo e direcionar o método pra onde voce quiser.

new OutputStream() {
			@Override
			public void write(int b) throws IOException {
				System.out.println(b);
			}
		};

Nesse caso todos os dados seriam impressos no console.
Voce pode deixar o método vazio, mas não faz sentido ele não fazer nada.

M

Cara tentei entender a tua dúvida mas ficou difícil. Uma hora tu pergunta de InputStream e em outra menciona OutputStream. :roll:

R

Usa ByteArrayInputStream e ByteArrayOutputStream…

Vc trabalha com os bytes em memória… sem necessidade de criar o arquivo

S

rogelgarcia:
Usa ByteArrayInputStream e ByteArrayOutputStream…

Vc trabalha com os bytes em memória… sem necessidade de criar o arquivo

Exatamente isto que eu procurava, muito Obrigado.

[]'s,
Filipe D.

E

E se eu quiser saber se o meu ByteArrayOutputStream é um arquivo ou um directory? tem como??

E

everton_verbo:
E se eu quiser saber se o meu ByteArrayOutputStream é um arquivo ou um directory? tem como??

A resposta é “false” para ambas as suas perguntas. Um ByteArrayOutputStream é um ByteArrayOutputStream , não um arquivo nem um diretório.

Criado 6 de maio de 2010
Ultima resposta 17 de jul. de 2013
Respostas 6
Participantes 6