Android制作字符串表格String.xml转EXCEL工具
2018-01-20 16:28
411 查看
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
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
相关文章推荐
- XML工具代码:SAX从String字符串XML内获取指定节点或属性的值
- Android string.xml多语言翻译工具
- [转的哦】 Android-字符串资源及其格式化Android 中的string.xml用法小结
- Android常用工具之对字符串String进行MD5加密
- Android string.xml字符串的格式化和样式
- JAVA字符串格式化-String.format()的使用 及 Android 中 string.xml 中 字符串格式转化
- Android 从string.xml 中获取字符串的值
- android多语言对应时 利用excel生成不同语言的string.xml文件
- Android:关于string.xml中的字符串特殊格式的定义
- Android开发string.xml中动态配置多个字符串内容
- Android中的string.xml里如何给字符串前后加空格
- android 在string.xml 中自定义字符串格式数据
- Android中动态改变string.xml中的字符串
- Android中动态修改string.xml中字符串的内容
- android string.xml的字符串中插入变量
- 【我的Android进阶之旅】Android Studio如何轻松整理字符串到string.xml中
- android string.xml中格式资源字符串
- Android中动态修改string.xml中字符串的内容
- 判断字符串string是数字、json结构、xml结构
- 使用EXCEL 2007制作表格时,在下拉过程中使表头固定不动 冻结窗格(转载)