InputStream e gravação de arquivos

Olá!
Bem, estou com o seguinte problema:

Leio um arquivo utilizando o metodo getResourceAsStream(“caminho_relativo”), que e retorna um Inputstream… até ai sem problemas…
Como nao tenho o caminho completo para saber onde se encontra esse arquivo, como faço para gravar alguma coisa nele??

A principio eu quero uma coisa que faca o seguinte:

  • Busque o arquivo com Stream (isso já consigo fazer)
  • Crie um outPutStream para que eu possa gravar nesse mesmo arquivo
  • Salve esse arquivo…

alguém pode me ajudar?
Só encontro na internet uma maneira de criar um writer de arquivo utilizando o caminho completo para ele…

try{
    File arquivo = new File(getClass().getResource("../pasta/arquivo.txt").toURI());

    //agora é só usar...
}catch(Exception e){
   e.printStackTrace();
}

problemas:
Como fazer isso com o java 1.4???

Tentei a seguinte possibilidade:

URL url = WebAppender.class.getResource(“caminho relativo”);

    URLConnection connection = null;
    OutputStream out = null;
    try {
        connection = url.openConnection();
        out = connection.getOutputStream();
    } catch (Exception e) {
        e.printStackTrace();
    }

mas isso me retorna um excecao:
java.net.UnknownServiceException: protocol doesn’t support output

o protocolo eh “File”

obrigado pela ajuda

o unico problema do 1.4 é que não tem o metodo toURI() na classe URL, então faça você mesmo…

try{
    File arquivo = new File(new URI(getClass().getResource("../pasta/arquivo.txt").toString()));

    //agora é só usar...
}catch(Exception e){
   e.printStackTrace();
}