2012-01-31 11 views
1

を書く私は、私のサーバー上のtxtファイルを開くのIntを取得し、1でint型をインクリメントし、再度ファイルにそれを書きたいです。開き、リモートファイルとそれに

は、私はこの方法でファイルを取得:

public int getCount() { 
     try { 
URL updateURL = new URL("http://myserver.gov/text.txt"); 
URLConnection conn = updateURL.openConnection(); 
InputStream is = conn.getInputStream(); 
BufferedInputStream bis = new BufferedInputStream(is); 
ByteArrayBuffer baf = new ByteArrayBuffer(50); 

int current = 0; 
while((current = bis.read()) != -1){ 
    baf.append((byte)current); 
} 

/* Convert the Bytes read to a String. */ 
String tmp = new String(baf.toByteArray()); 
int count = Integer.valueOf(tmp); 
return count; 
     } catch(Exception e) { 
      Log.e(TAG, "getAdCount Exception = " + e); 
      e.printStackTrace(); 
      return -1; 
     } 
    } 

は今、私は単純にカウントをインクリメントし、それをファイルに書きたいです。
私はこの方法でファイルに書き込むことが可能であることを、考え出し:

 BufferedWriter out = new BufferedWriter(new FileWriter("text.txt")); 
     out.write(count); 
     out.close(); 

しかし、私は、リモートのファイルを開きますか?私は方法を見つけません。ありがとう!

#####の編集:
#####私はこのコードを書いた:

 URL url = new URL("http://myserver.gov/text.txt"); 
     URLConnection con = url.openConnection(); 
     con.setDoOutput(true); 
     OutputStreamWriter out = new OutputStreamWriter(con.getOutputStream()); 
     out.write(count); 
     out.close(); 

をしかし、それはファイルへのカウントを書くdoesntの。リモートfile.Firstly開いている.When

+0

私にはどのようなオプションがありますか? – Leandros

+0

私の悪い、一秒間私はあなたが別のサーバーにファイルを転送しなければならないと思った、私は私のコメントを削除します – Gevorg

答えて

1

あなたはここでの指示に従うことができます:Reading from and Writing to a URLConnection

更新:カウンタを更新するためにPOSTリクエストを処理する実行中のサーバーも必要です。

+0

ありがとう。私は、参照を使用し、このコードを書いた:\t \t \t 'URLのURL =新しいURL( "http://myserver.gov/text.txtを"); \t \t \t URLConnection con = url.openConnection(); \t \t \t con.setDoOutput(true); \t \t \tのOutputStreamWriterアウト=新しいのOutputStreamWriter(con.getOutputStream()); \t \t \t out.write(count); \t \t \t out.close(); ' しかし、彼らはそれにカウントを書きませんでした。 – Leandros

+0

実行されているサーバーは?投稿要求はどのように処理されますか? – mtsz

+0

シンプルなウェブスペースです。 – Leandros

0

は私によると、ファイルの内容を読み込むよりも、接続を開く必要があります。

HttpClient httpclient = new DefaultHttpClient(); 
HttpPost httppost = new HttpPost(url); 
HttpResponse response = httpclient.execute(httppost); 
HttpEntity entity = response.getEntity(); 

ファイルコンテンツを書き込むことができます。あなたはURLConnectionので作業したい場合は

関連する問題