对办公文件的操作

原创 2015年11月20日 11:24:23
  //android获取一个用于打开PDF文件的intent

  public static Intent getPdfFileIntent( String param )

  {

    Intent intent = new Intent("android.intent.action.VIEW");

    intent.addCategory("android.intent.category.DEFAULT");

    intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

    Uri uri = Uri.fromFile(new File(param ));

    intent.setDataAndType(uri, "application/pdf");

    return intent;

  }


//android获取一个用于打开文本文件的intent

  public static Intent getTextFileIntent( String paramString, boolean paramBoolean)

  {

    Intent intent = new Intent("android.intent.action.VIEW");

    intent.addCategory("android.intent.category.DEFAULT");

    intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

    if (paramBoolean)

    {

      Uri uri1 = Uri.parse(param );

      intent.setDataAndType(uri1, "text/plain");

    }

    while (true)

    {

      return intent;

      Uri uri2 = Uri.fromFile(new File(param ));

      intent.setDataAndType(uri2, "text/plain");

    }

  }


 //android获取一个用于打开音频文件的intent

  public static Intent getAudioFileIntent( String param )

  {

    Intent intent = new Intent("android.intent.action.VIEW");

    intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);

    intent.putExtra("oneshot", 0);

    intent.putExtra("configchange", 0);

    Uri uri = Uri.fromFile(new File(param ));

    intent.setDataAndType(uri, "audio/*");

    return intent;

  }

 

 

 

  //android获取一个用于打开视频文件的intent

  public static Intent getVideoFileIntent( String param )

  {

    Intent intent = new Intent("android.intent.action.VIEW");

    intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);

    intent.putExtra("oneshot", 0);

    intent.putExtra("configchange", 0);

    Uri uri = Uri.fromFile(new File(param ));

    intent.setDataAndType(uri, "video/*");

    return intent;

  }

 

 

  //android获取一个用于打开CHM文件的intent

  public static Intent getChmFileIntent( String param )

  {

    Intent intent = new Intent("android.intent.action.VIEW");

    intent.addCategory("android.intent.category.DEFAULT");

    intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

    Uri uri = Uri.fromFile(new File(param ));

    intent.setDataAndType(uri, "application/x-chm");

    return intent;

  }

 

 

 

 //android获取一个用于打开Word文件的intent

  public static Intent getWordFileIntent( String param )

  {

    Intent intent = new Intent("android.intent.action.VIEW");

    intent.addCategory("android.intent.category.DEFAULT");

    intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

    Uri uri = Uri.fromFile(new File(param ));

    intent.setDataAndType(uri, "application/msword");

    return intent;

  }

 

 //android获取一个用于打开Excel文件的intent

  public static Intent getExcelFileIntent( String param )

  {

    Intent intent = new Intent("android.intent.action.VIEW");

    intent.addCategory("android.intent.category.DEFAULT");

    intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

    Uri uri = Uri.fromFile(new File(param ));

    intent.setDataAndType(uri, "application/vnd.ms-excel");

    return intent;

  }

  

  

 //android获取一个用于打开PPT文件的intent

  public static Intent getPptFileIntent( String param )

  {

    Intent intent = new Intent("android.intent.action.VIEW");

    intent.addCategory("android.intent.category.DEFAULT");

    intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

    Uri uri = Uri.fromFile(new File(param ));

    intent.setDataAndType(uri, "application/vnd.ms-powerpoint");

    return intent;

  }

 //android获取一个用于打开HTML文件的intent

  public static Intent getHtmlFileIntent( String param )

  {

    Uri uri = Uri.parse(param ).buildUpon().encodedAuthority("com.android.htmlfileprovider").scheme("content").encodedPath(param ).build();

    Intent intent = new Intent("android.intent.action.VIEW");

    intent.setDataAndType(uri, "text/html");

    return intent;

  }


解析doc,要tm-extractors-0.4.jar这个包
解析xls,要jxl.jar这个包


public static String readDOC(String path) {
                // 创建输入流读取doc文件
                FileInputStream in;
                String text = null;
//                Environment.getExternalStorageDirectory().getAbsolutePath()+ "/aa.doc")
                try {
                        in = new FileInputStream(new File(path));
                        int a= in.available();
                        WordExtractor extractor = null;
                        // 创建WordExtractor
                        extractor = new WordExtractor();
                        // 对doc文件进行提取
                        text = extractor.extractText(in);
                        System.out.println("解析得到的东西"+text);
                } catch (FileNotFoundException e) {
                        e.printStackTrace();
                } catch (Exception e) {
                        e.printStackTrace();
                }
                if (text == null) {
                        text = "解析文件出现问题";
                }
                return text;
        }
public static String readXLS(String path) {
                String str = "";
                try {
                        Workbook workbook = null;
                        workbook = Workbook.getWorkbook(new File(path));
                        Sheet sheet = workbook.getSheet(0);
                        Cell cell = null;
                        int columnCount = sheet.getColumns();
                        int rowCount = sheet.getRows();
                        for (int i = 0; i < rowCount; i++) {
                                for (int j = 0; j < columnCount; j++) {
                                        cell = sheet.getCell(j, i);
                                        String temp2 = "";
                                        if (cell.getType() == CellType.NUMBER) {
                                                temp2 = ((NumberCell) cell).getValue() + "";
                                        } else if (cell.getType() == CellType.DATE) {
                                                temp2 = "" + ((DateCell) cell).getDate();
                                        } else {
                                                temp2 = "" + cell.getContents();
                                        }
                                        str = str + "  " + temp2;
                                }
                                str += "\n";
                        }
                        workbook.close();
                } catch (Exception e) {
                }
                if (str == null) {
                        str = "解析文件出现问题";
                }
                return str;
        }
public static String readDOCX(String path) {
                String river = "";
                try {
                        ZipFile xlsxFile = new ZipFile(new File(path));
                        ZipEntry sharedStringXML = xlsxFile.getEntry("word/document.xml");
                        InputStream inputStream = xlsxFile.getInputStream(sharedStringXML);
                        XmlPullParser xmlParser = Xml.newPullParser();
                        xmlParser.setInput(inputStream, "utf-8");
                        int evtType = xmlParser.getEventType();
                        while (evtType != XmlPullParser.END_DOCUMENT) {
                                switch (evtType) {
                                case XmlPullParser.START_TAG:
                                        String tag = xmlParser.getName();
                                        System.out.println(tag);
                                        if (tag.equalsIgnoreCase("t")) {
                                                river += xmlParser.nextText() + "\n";
                                        }
                                        break;
                                case XmlPullParser.END_TAG:
                                        break;
                                default:
                                        break;
                                }
                                evtType = xmlParser.next();
                        }
                } catch (ZipException e) {
                        e.printStackTrace();
                } catch (IOException e) {
                        e.printStackTrace();
                } catch (XmlPullParserException e) {
                        e.printStackTrace();
                }
                if (river == null) {
                        river = "解析文件出现问题";
                }

                return river;
        }
public static String readXLSX(String path) {
                String str = "";
                String v = null;
                boolean flat = false;
                List ls = new ArrayList();
                try {
                        ZipFile xlsxFile = new ZipFile(new File(path));
                        ZipEntry sharedStringXML = xlsxFile
                                        .getEntry("xl/sharedStrings.xml");
                        InputStream inputStream = xlsxFile.getInputStream(sharedStringXML);
                        XmlPullParser xmlParser = Xml.newPullParser();
                        xmlParser.setInput(inputStream, "utf-8");
                        int evtType = xmlParser.getEventType();
                        while (evtType != XmlPullParser.END_DOCUMENT) {
                                switch (evtType) {
                                case XmlPullParser.START_TAG:
                                        String tag = xmlParser.getName();
                                        if (tag.equalsIgnoreCase("t")) {
                                                ls.add(xmlParser.nextText());
                                        }
                                        break;
                                case XmlPullParser.END_TAG:
                                        break;
                                default:
                                        break;
                                }
                                evtType = xmlParser.next();
                        }
                        ZipEntry sheetXML = xlsxFile.getEntry("xl/worksheets/sheet1.xml");
                        InputStream inputStreamsheet = xlsxFile.getInputStream(sheetXML);
                        XmlPullParser xmlParsersheet = Xml.newPullParser();
                        xmlParsersheet.setInput(inputStreamsheet, "utf-8");
                        int evtTypesheet = xmlParsersheet.getEventType();
                        while (evtTypesheet != XmlPullParser.END_DOCUMENT) {
                                switch (evtTypesheet) {
                                case XmlPullParser.START_TAG:
                                        String tag = xmlParsersheet.getName();
                                        if (tag.equalsIgnoreCase("row")) {
                                        } else if (tag.equalsIgnoreCase("c")) {
                                                String t = xmlParsersheet.getAttributeValue(null, "t");
                                                if (t != null) {
                                                        flat = true;
                                                        System.out.println(flat + "有");
                                                } else {
                                                        System.out.println(flat + "没有");
                                                        flat = false;
                                                }
                                        } else if (tag.equalsIgnoreCase("v")) {
                                                v = xmlParsersheet.nextText();
                                                if (v != null) {
                                                        if (flat) {
                                                                str += ls.get(Integer.parseInt(v)) + "  ";
                                                        } else {
                                                                str += v + "  ";
                                                        }
                                                }
                                        }
                                        break;
                                case XmlPullParser.END_TAG:
                                        if (xmlParsersheet.getName().equalsIgnoreCase("row")
                                                        && v != null) {
                                                str += "\n";
                                        }
                                        break;
                                }
                                evtTypesheet = xmlParsersheet.next();
                        }
                        System.out.println(str);
                } catch (ZipException e) {
                        e.printStackTrace();
                } catch (IOException e) {
                        e.printStackTrace();
                } catch (XmlPullParserException e) {
                        e.printStackTrace();
                }
                if (str == null) {
                        str = "解析文件出现问题";
                }
                return str;
        }
public static String readPPTX(String path) {
                List ls = new ArrayList();
                String river = "";
                ZipFile xlsxFile = null;
                try {
                        xlsxFile = new ZipFile(new File(path));// pptx按照读取zip格式读取
                } catch (ZipException e1) {
                        e1.printStackTrace();
                } catch (IOException e1) {
                        e1.printStackTrace();
                }
                try {
                        ZipEntry sharedStringXML = xlsxFile.getEntry("[Content_Types].xml");// 找到里面存放内容的文件
                        InputStream inputStream = xlsxFile.getInputStream(sharedStringXML);// 将得到文件流
                        XmlPullParser xmlParser = Xml.newPullParser();// 实例化pull
                        xmlParser.setInput(inputStream, "utf-8");// 将流放进pull中
                        int evtType = xmlParser.getEventType();// 得到标签类型的状态
                        while (evtType != XmlPullParser.END_DOCUMENT) {// 循环读取流
                                switch (evtType) {
                                case XmlPullParser.START_TAG: // 判断标签开始读取
                                        String tag = xmlParser.getName();// 得到标签
                                        if (tag.equalsIgnoreCase("Override")) {
                                                String s = xmlParser
                                                                .getAttributeValue(null, "PartName");
                                                if (s.lastIndexOf("/ppt/slides/slide") == 0) {
                                                        ls.add(s);
                                                }
                                        }
                                        break;
                                case XmlPullParser.END_TAG:// 标签读取结束
                                        break;
                                default:
                                        break;
                                }
                                evtType = xmlParser.next();// 读取下一个标签
                        }
                } catch (ZipException e) {
                        e.printStackTrace();
                } catch (IOException e) {
                        e.printStackTrace();
                } catch (XmlPullParserException e) {
                        e.printStackTrace();
                }
                for (int i = 1; i < (ls.size() + 1); i++) {// 假设有6张幻灯片
                        river += "第" + i + "张················" + "\n";
                        try {
                                ZipEntry sharedStringXML = xlsxFile.getEntry("ppt/slides/slide"
                                                + i + ".xml");// 找到里面存放内容的文件
                                InputStream inputStream = xlsxFile
                                                .getInputStream(sharedStringXML);// 将得到文件流
                                XmlPullParser xmlParser = Xml.newPullParser();// 实例化pull
                                xmlParser.setInput(inputStream, "utf-8");// 将流放进pull中
                                int evtType = xmlParser.getEventType();// 得到标签类型的状态
                                while (evtType != XmlPullParser.END_DOCUMENT) {// 循环读取流
                                        switch (evtType) {
                                        case XmlPullParser.START_TAG: // 判断标签开始读取
                                                String tag = xmlParser.getName();// 得到标签
                                                if (tag.equalsIgnoreCase("t")) {
                                                        river += xmlParser.nextText() + "\n";
                                                }
                                                break;
                                        case XmlPullParser.END_TAG:// 标签读取结束
                                                break;
                                        default:
                                                break;
                                        }
                                        evtType = xmlParser.next();// 读取下一个标签
                                }
                        } catch (ZipException e) {
                                e.printStackTrace();
                        } catch (IOException e) {
                                e.printStackTrace();
                        } catch (XmlPullParserException e) {
                                e.printStackTrace();
                        }
                }
                if (river == null) {
                        river = "解析文件出现问题";
                }
                return river;
        }


高效办公四要素

  高效办公四要素Author: Vince时间对于一个做研发产品的公司来说是多么的重要,特别是研发周期短、市场竞争激烈的产品,研发投入的时间直接影响到该产品的上市时间和市场竞争力,因此高效办公将成为...
  • vincetest
  • vincetest
  • 2006年12月09日 21:30
  • 2299

对文件“\\.\PhysicalDrive1”的操作失败。

用u盘给vm虚拟机安装系统时提示: 因为前面添加了一个新的硬盘(既你的U盘),用来引导虚拟机进入系统启动盘,如果你在“可移动设备”中将选择“连接(断开与主机的连接)”,那么你的U盘就作为虚拟机的移动...
  • chenghuikai
  • chenghuikai
  • 2016年12月30日 15:03
  • 2484

办公软件名词缩写

PLM 或 PM   项目管理 Product Lifecycle Management   ERP  企业管理软件 Enterprise Resource Planning CR...
  • drupe
  • drupe
  • 2014年12月14日 15:07
  • 544

虚拟机出现“操作文件.PhysicalDrive1失败”的解决方法

今天打算利用U盘给虚拟机装系统做实验,中途遇到了“操作文件.PhysicalDrive1失败”的错误,试了网上的方法都没有成功,最后自己试了很久总算弄出来了。鉴于本人的基础水平有限,如果后面解释哪里有...
  • zhengjiafa
  • zhengjiafa
  • 2016年12月18日 12:15
  • 1902

JAVA对文件操作的常用方法

JAVA对文件操作的常用方法 // 文件数据的写入 public static void StringBufferWriteFile(Map data,String path) thro...
  • jian_csdn
  • jian_csdn
  • 2015年01月30日 10:41
  • 725

对文件“\\.\PhysicalDrive1”的操作失败

在虚拟机上练习装win7系统,添加了一硬盘物理机启动。但是一直报错,错误如下: 对文件“\.\PhysicalDrive1”的操作失败。 如果此文件位于远程文件系统上,请确保网络连接和磁盘所在的服...
  • qwq1503
  • qwq1503
  • 2017年02月15日 08:34
  • 1855

Python自动化(六)使用xlwt操作Excel

# coding:utf-8 import xlwtstudents = [ {'name': "孙淑悦", 'qq': "8882222"}, {'name': "吕婉源", 'qq...
  • gavinsun
  • gavinsun
  • 2017年09月21日 11:09
  • 320

hadoop中hdfs对文件的操作Api

package hdfstest; import java.io.FileInputStream; import java.io.IOException; import java.io.Inp...
  • wt346326775
  • wt346326775
  • 2016年11月23日 15:16
  • 303

共享办公室成为共享经济发展大趋势

“互联网+”的时代,催生了很多新的商业模式,比如分享经济 —— 人们不再满足于在独立封闭的写字间办公,人们想接触更多人和资源,让自己变得更加开放和自由。所以,美国产生了一个“共享办公”的模式,更多的公...
  • uuZC66688
  • uuZC66688
  • 2017年11月01日 15:18
  • 326

利用java对excel进行读写操作

因为参与的一个项目有一个任务,是对一个excel文件中的字符进行分隔, 如果将excel转成txt,可能会加大对字符的分隔难度,所以利用开源项目JExcelApi来操作。 下面简单演示下如何对ex...
  • ieicihc
  • ieicihc
  • 2011年08月24日 17:59
  • 2502
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:对办公文件的操作
举报原因:
原因补充:

(最多只允许输入30个字)