使用Android和http apache mime将文件xls转换为pdf

时间:2013-07-24 02:44:23

标签: android file http pdf xls

这是一个美好的夜晚,我写信询问我是否可以提供以下代码,以及通过listView和presslong进行核心修改,获取文件的路径,尝试转动服务: 的: http://www.convertapi.com/excel-pdf-api

我不能使用webview,或者可以使用隐藏方式 感谢

代码是:

mPrefs = getSharedPreferences("RutaPath", Context.MODE_PRIVATE);
                        String rutasave = mPrefs.getString("Externa", "");

                        String resultcode = "0";

                        HttpPost httppost = new HttpPost("http://do.convertapi.com/Excel2Pdf/json");

                        MultipartEntity entity = new MultipartEntity( HttpMultipartMode.BROWSER_COMPATIBLE );

                        // For File parameters
                        file=new File(rutasave+"prueba.xls");
                       //Toast.makeText(this,"cargando: " +rutasave+"prueba.xls",Toast.LENGTH_SHORT).show();
                        outputDir=rutasave;
                        entity.addPart("file", new FileBody(file, "binary/octet-stream"));//"file"

                        httppost.setEntity( entity );

                        HttpClient httpclient = new DefaultHttpClient();

                      // return new Boolean(true);//eliminar despues
                        try {
                            HttpResponse response = httpclient.execute(httppost);
                            Header rcHeader = response.getFirstHeader("result");
                            if(rcHeader != null){

                                resultcode = rcHeader.getValue();

                                if("True".equals(resultcode)){


                                    filesize = response.getFirstHeader("filesize").getValue();
                                    filename = response.getFirstHeader("OutputFileName").getValue();

                                    //Toast.makeText(this,"Archivo: " +filename,Toast.LENGTH_SHORT).show();
                                    HttpEntity hentity = response.getEntity();
                                    if(hentity != null){

                                        InputStream istream = hentity.getContent();
                                        File file = new File(outputDir+filename+".pdf");//outputDir  File.separator
                                        FileOutputStream ostream = new FileOutputStream(file);

                                        byte[] b = new byte[1024];
                                        int num = 0;
                                        while( (num = istream.read(b, 0, b.length)) > 0)
                                            ostream.write(b, 0, num);
                                        istream.close();
                                        ostream.flush();
                                        ostream.close();
                                        return new Boolean(true);

                                    }
                                }
                            }

                        } catch (ClientProtocolException e) {

0 个答案:

没有答案