有没有人知道如何在
Android中打开PDF文件?我的代码看起来像这样:
- public class SampleActivity extends Activity {
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.main);
- CopyReadAssets();
- }
- private void CopyReadAssets() {
- AssetManager assetManager = getAssets();
- InputStream in = null;
- OutputStream out = null;
- File file = new File(getFilesDir(),"git.pdf");
- try {
- in = assetManager.open("git.pdf");
- out = openFileOutput(file.getName(),Context.MODE_WORLD_READABLE);
- copyFile(in,out);
- in.close();
- in = null;
- out.flush();
- out.close();
- out = null;
- } catch (Exception e) {
- Log.e("tag",e.getMessage());
- }
- Intent intent = new Intent(Intent.ACTION_VIEW);
- intent.setDataAndType(
- Uri.parse("file://" + getFilesDir() + "/git.pdf"),"application/pdf");
- startActivity(intent);
- }
- private void copyFile(InputStream in,OutputStream out) throws IOException {
- byte[] buffer = new byte[1024];
- int read;
- while ((read = in.read(buffer)) != -1) {
- out.write(buffer,read);
- }
- }
- }
解决方法
以下是从资产文件夹打开pdf文件的代码,但您必须在设备上安装pdf阅读器:
- private void CopyAssets() {
- AssetManager assetManager = getAssets();
- InputStream in = null;
- OutputStream out = null;
- File file = new File(getFilesDir(),"fileName.pdf");
- try {
- in = assetManager.open("fileName.pdf");
- out = openFileOutput(file.getName(),e.getMessage());
- }
- Intent intent = new Intent(Intent.ACTION_VIEW);
- intent.setDataAndType(
- Uri.parse("file://" + getFilesDir() + "/fileName.pdf"),read);
- }
- }