为了账号安全,请及时绑定邮箱和手机立即绑定

而不是 JSON 数据链接返回.txt 文件如何在 android 中获取 JSON 数据

而不是 JSON 数据链接返回.txt 文件如何在 android 中获取 JSON 数据

芜湖不芜 2023-04-26 13:49:13
当我在浏览器中打开该链接时,我正在使用该链接,它会生成一个 json.txt 文件并下载它。我想在 android 应用程序中获取这个 txt 文件,并想从这个 txt 文件中获取 JSON 数据。
查看完整描述

1 回答

?
暮色呼如

TA贡献1853条经验 获得超9个赞

new DownloadFileFromURL().execute("your_file_downloadable_url");


class DownloadFileFromURL extends AsyncTask<String, String, String> {


    /**

     * Before starting background thread

     * */

    @Override

    protected void onPreExecute() {

        super.onPreExecute();

        System.out.println("Starting download");



    }


    /**

     * Downloading file in background thread

     * */

    @Override

    protected String doInBackground(String... f_url) {

        int count;

        try {

            String root = Environment.getExternalStorageDirectory().toString();


            System.out.println("Downloading");

            URL url = new URL(f_url[0]);


            URLConnection conection = url.openConnection();

            conection.connect();

            // getting file length

            int lenghtOfFile = conection.getContentLength();


            // input stream to read file - with 8k buffer

            InputStream input = new BufferedInputStream(url.openStream(), 8192);


            // Output stream to write file


            OutputStream output = new FileOutputStream(root+"/downloadedfile.txt");

            byte data[] = new byte[1024];


            long total = 0;

            while ((count = input.read(data)) != -1) {

                total += count;


                // writing data to file

                output.write(data, 0, count);


            }


            // flushing output

            output.flush();


            // closing streams

            output.close();

            input.close();


        } catch (Exception e) {

            Log.e("Error: ", e.getMessage());

        }


        return null;

    }




    /**

     * After completing background task

     * **/

    @Override

    protected void onPostExecute(String file_url) {

        System.out.println("Downloaded");


        pDialog.dismiss();

    }


}


查看完整回答
反对 回复 2023-04-26
  • 1 回答
  • 0 关注
  • 106 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信