Galera preciso ler um txt e apagar ele em um servidor http, teria como fazer isso através de uma aplicação em swing?
[RESOLVIDO] Ler arquivos no servidor
D
5 Respostas
R
Ola, somente para ler seria fácil, mas para editar terá que usar ftp e logar no servidor com permissões…
D
Se for somente para ler, como eu poderia fazer ?
G
Se você tiver acesso direto ao servidor e permissões para editar o arquivo é simples, faça algo assim:
Usando Scanner
Scanner scan = new Scanner(new File("arquivo.txt"));
while(scan.hasNextLine())
{
System.out.println(scan.nextLine());
}
Usando InputStream:
InputStream is = new FileInputStream(new File("arquivo.txt"));
InputStreamReader isr = new InputStreamReader(is);
BufferedReader reader = new BufferedReader(isr);
String linha = reader.readLine();
while(linha != null)
{
System.out.println(linha);
linha = reader.readLine();
}
D
Mais o servidor fica no http tipo http://www.site.com.br/arquivo.txt
Não consigo acessar ele via new File()
D
Vou postar aqui um teste que eu fiz e funcionou legal, vlw galera
package teste;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import sun.misc.BASE64Encoder;
public class AcessarServidor {
public AcessarServidor() {
super();
}
public static void main(String[] args) throws IOException {
BASE64Encoder enc = new sun.misc.BASE64Encoder();
//
URL url = new URL("http://100.100.100.177:8080/integracao/teste.txt");
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.addRequestProperty("Request-Method", "GET");
connection.addRequestProperty("Authorization", "Basic " + enc.encode("user:password".getBytes()));
connection.setDoInput(true);
connection.setDoOutput(false);
connection.connect();
if (connection.getResponseCode() == 200) {//HttpURLConnection.HTTP_ACCEPTED
BufferedReader br = new BufferedReader(new InputStreamReader(connection.getInputStream()));
StringBuffer newData = new StringBuffer();
String s = "";
while (null != ((s = br.readLine()))) {
newData.append(s);
}
br.close();
System.out.println(new String(newData));
}
System.out.println("Resultado: " + connection.getResponseCode() + "/" + connection.getResponseMessage());
connection.disconnect();
}
}
Criado 27 de junho de 2012
Ultima resposta 28 de jun. de 2012
Respostas 5
Participantes 3