Android制作字符串表格String.xml转EXCEL工具

Android制作字符串表格String.xml转EXCEL工具publicstaticListgetAllExternalSdcardPath(){ListPathList=newArrayList();StringfirstPath=Environment.getExternalStorageDirectory().getPath();Log.d(TAG,”getAllExter

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

public static List<String> getAllExternalSdcardPath() {
        List<String> PathList = new ArrayList<String>();

        String firstPath = Environment.getExternalStorageDirectory().getPath();
        Log.d(TAG,"getAllExternalSdcardPath , firstPath = "+firstPath);

        try {
        // 运行mount命令,获取命令的输出,得到系统中挂载的所有目录
            Runtime runtime = Runtime.getRuntime();
            Process proc = runtime.exec("mount");
            InputStream is = proc.getInputStream();
            InputStreamReader isr = new InputStreamReader(is);
            String line;
            BufferedReader br = new BufferedReader(isr);
            while ((line = br.readLine()) != null) {
                // 将常见的linux分区过滤掉
                if (line.contains("proc") || line.contains("tmpfs") || line.contains("media") || line.contains("asec") || line.contains("secure") || line.contains("system") || line.contains("cache")
                        || line.contains("sys") || line.contains("data") || line.contains("shell") || line.contains("root") || line.contains("acct") || line.contains("misc") || line.contains("obb")) {
                    continue;
                }

                // 下面这些分区是我们需要的
                if (line.contains("fat") || line.contains("fuse") || (line.contains("ntfs"))){
                    // 将mount命令获取的列表分割,items[0]为设备名,items[1]为挂载路径
                    String items[] = line.split(" ");
                    if (items != null && items.length > 1){
                        String path = items[1].toLowerCase(Locale.getDefault());
                        // 添加一些判断,确保是sd卡,如果是otg等挂载方式,可以具体分析并添加判断条件
                        if (path != null && !PathList.contains(path) && path.contains("sd"))
                            PathList.add(items[1]);
                    }
                }
            }
        } catch (Exception e){
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

        if (!PathList.contains(firstPath)) {
            PathList.add(firstPath);
        }

        return PathList;
    }

想将Android应用中的多国语言翻译整理成一张excel表格来进行维护,或者校对,或者是给客户发一个语言对照说明表?一个个手动复制粘贴?那太LOW了吧,没有什么重复动作是一个程序员不能编程实现的,现在就上一个转换工具,可以将String.xml转换的EXCEL的.xls。当然也能将EXCEL直接转换成String.XML。废话不多说,直接上源码实例。

当然最要注意的是,你首先需要确定你的sd卡路径或者usb的路径。然后稍微改动代码中的路径就可以让你想放哪里就放哪里了。

也可以使用这个方法获取路径:

public static List<String> getAllExternalSdcardPath() {

        List<String> PathList = new ArrayList<String>();

        String firstPath = Environment.getExternalStorageDirectory().getPath();
        Log.d(TAG,”getAllExternalSdcardPath , firstPath = “+firstPath);

        try {

        // 运行mount命令,获取命令的输出,得到系统中挂载的所有目录
            Runtime runtime = Runtime.getRuntime();
            Process proc = runtime.exec(“mount”);
            InputStream is = proc.getInputStream();
            InputStreamReader isr = new InputStreamReader(is);
            String line;
            BufferedReader br = new BufferedReader(isr);
            while ((line = br.readLine()) != null) {

                // 将常见的linux分区过滤掉
                if (line.contains(“proc”) || line.contains(“tmpfs”) || line.contains(“media”) || line.contains(“asec”) || line.contains(“secure”) || line.contains(“system”) || line.contains(“cache”)
                        || line.contains(“sys”) || line.contains(“data”) || line.contains(“shell”) || line.contains(“root”) || line.contains(“acct”) || line.contains(“misc”) || line.contains(“obb”)) {

                    continue;
                }

                // 下面这些分区是我们需要的
                if (line.contains(“fat”) || line.contains(“fuse”) || (line.contains(“ntfs”))){

                    // 将mount命令获取的列表分割,items[0]为设备名,items[1]为挂载路径
                    String items[] = line.split(” “);
                    if (items != null && items.length > 1){

                        String path = items[1].toLowerCase(Locale.getDefault());
                        // 添加一些判断,确保是sd卡,如果是otg等挂载方式,可以具体分析并添加判断条件
                        if (path != null && !PathList.contains(path) && path.contains(“sd”))
                            PathList.add(items[1]);
                    }
                }
            }
        } catch (Exception e){

            // TODO Auto-generated catch block
            e.printStackTrace();
        }

        if (!PathList.contains(firstPath)) {

            PathList.add(firstPath);
        }

        return PathList;
    }

另外还需要附上源码的下载地址:

http://download.csdn.net/download/yql44137228/10215688


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/171937.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • python基础知识思维导图总结

    python基础知识思维导图总结今天给同学用思维导图整理了python基础知识,供大家复习参考学习,希望每天都有进步。鸡汤几点:没有目标永远不知道方向在哪?不去尝试永远不知道答案和结果?打破习惯、冲击惯性思维、不断学习,才能使你越来越有价值。行动永远比坐以待毙更幸运。主要内容:一、Python简介二、输入输出三、变量、数据基本类型与操作四、条件判断五、常用数据类型–列表六、常用数据类型–元组tuple、字典dict(全称dictionary)七、常用数据类型–布尔值(True

    2022年10月16日
    0
  • Hi3516DV300双目开发板开发环境搭建

    Hi3516DV300双目开发板开发环境搭建Hi3516DV300双目开发板开发环境搭建1、软件包安装参考:《Hi3516CV500╱Hi3516DV300SDK安装及升级使用说明》将sdk和交叉工具链文件在同一目录展开sdk包1.进入Hi3516CV500_SDK_V2.0.1.0目录下执行./sdk.unpack(请用root或sudo权限执行)2.解压tar–xzfarm-himix200-linux.tgz,进入arm-himix200-linux目录运行chmod+xarm-himix200-l

    2022年9月2日
    3
  • python库之_thread

    官方参考文档:https://docs.python.org/3.7/library/_thread.html_thread库方法(1)_thread.error(2)_thread.Lock

    2021年12月29日
    44
  • Java设计模式之行为型:策略模式

    Java设计模式之行为型:策略模式

    2021年10月4日
    43
  • Minimum Fleet Problem「建议收藏」

    Minimum Fleet Problem「建议收藏」本文为MITSenseableCityLaboratory2018年5月23号发表于Nature杂志Addressingtheminimumfleetprobleminon-demandurbanmobility论文的学习笔记。问题定义给定一批出行需求,在出行需求被严格满足且最大空驶时间不超过δ分钟约束下,找到…

    2022年6月5日
    30
  • 函数式接口

    函数式接口

    2021年5月19日
    138

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号