1
try {
        URL url = new URL("http://dantri.com.vn/xa-hoi.rss");
        HttpURLConnection connection = (HttpURLConnection) url.openConnection();
        connection.connect();

        InputStream is = new BufferedInputStream(url.openStream());
        OutputStream fos = new FileOutputStream("/sdcard/xa-hoi.rss");

        byte[] buffer = new byte[1024];
        int bufferLenght = 0;
        while((bufferLenght = is.read(buffer)) != -1){
            fos.write(buffer, 0, bufferLenght);
        }
        fos.close();
        fos.flush();
        is.close();
    } catch (MalformedURLException e) {
        e.printStackTrace();
    } catch (IOException e){
        e.printStackTrace();
    }

LogCat: 03-05 05:11:35.620: W/System.err(3437): java.io.FileNotFoundException: http://m.dantri.com.vn/xa-hoi.rss .

この問題は URL "dantri.com.vn/xa-hoi.rss" を "m.dantri.com.vn/xa-hoi.rss" に変更してください。みんなありがとう。

4

3 に答える 3

1

マニフェスト内に次のように記述していることを確認してください。

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
于 2013-03-05T05:49:30.497 に答える
1

SDCARD パスを次のように取得するには、静的文字列の代わりにEnvironment.getExternalStorageDirectory()を使用します。

String sdcardpath = Environment.getExternalStorageDirectory().getAbsolutePath();
OutputStream fos = new FileOutputStream(sdcardpath+"/xa-hoi.rss");

SDカードのアクセス許可が追加されていることを確認してAndroidManifest.xmlください:-

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
于 2013-03-05T05:55:49.327 に答える
0

エラーは次のとおりです。

 OutputStream fos = new FileOutputStream("/sdcard/xa-hoi.rss");

と置換する:

OutputStream fos = new FileOutputStream("xa-hoi.rss");
于 2013-03-05T05:48:23.737 に答える