java 学习笔记(二) 字符串分割
2011-07-05 16:31
525 查看
写个小程序用到将输入的路径字符串分割成路径和文件名两个字符串,就学习了下java中的字符串分割。网上查了下有两种方法。第一种是用String的split方法,另一种是StringTokenizer。应该还是有其他方法的,希望了解的同学们可以指点一下。
一.split,直接上代码吧。
输出结果为
d:\a\b
c.txt
由于刚刚接触java,代码中很多字符串操作感觉写的不是很好,望高手们多加指点,小弟感激不尽。
二.StringTokenizer
其实两者实现起来很类似,也许现在用的比较少还没有发现两者各适合什么情况,慢慢研究吧。。。
一.split,直接上代码吧。
public class SplitTest { public static void main(String[] args) { String path = "d:\\a\\b\\c.txt"; String fileName; String parentPath; String[] filePath = path.split("\\\\"); //部分标点符号不能直接使用,需要加\\ 而恰好要分割的符号也是\\ //分割后filePath[0] = d: // filePath[1] = a // filePath[2] = b // filePath[3] = c.txt fileName = filePath[filePath.length-1];//这里取到最后一个数组单元,即文件名 char[] pathTemp = new char[50]; path.getChars(0, path.length(), pathTemp, 0); //将文件名之前的字符串都拷贝到路径字符串中 parentPath = String.valueOf(pathTemp, 0, path.length() - fileName.length() - 1); System.out.println(parentPath); System.out.println(fileName); } }
输出结果为
d:\a\b
c.txt
由于刚刚接触java,代码中很多字符串操作感觉写的不是很好,望高手们多加指点,小弟感激不尽。
二.StringTokenizer
import java.util.StringTokenizer; public class tokenizerTest { public static void main(String[] args) { String path = "d:\\a\\b\\c.txt"; String fileName; String parentPath; StringTokenizer testTok = new StringTokenizer(path, "\\\\"); String[] filePath = new String[testTok.countTokens()]; int i = 0; while(testTok.hasMoreTokens()){ filePath[i++] = testTok.nextToken(); } fileName = filePath[i-1]; char[] pathTemp = new char[50]; path.getChars(0, path.length(), pathTemp, 0); //将文件名之前的字符串都拷贝到路径字符串中 parentPath = String.valueOf(pathTemp, 0, path.length() - fileName.length() - 1); System.out.println(parentPath); System.out.println(fileName); } }
其实两者实现起来很类似,也许现在用的比较少还没有发现两者各适合什么情况,慢慢研究吧。。。
相关文章推荐
- java 学习笔记(二) 字符串分割
- 【Java学习笔记】使用split()方法分割字符串
- Java学习笔记-字符串、正则表达式(String,regex)
- Boost学习笔记(六)---利用boost库string_algo::split函数分割字符串
- 【Java学习笔记】实现Comparator接口来进行字符串逆向排序
- Java输出字符串大小写字母个数【Java学习笔记】
- JAVA学习笔记(二)字符串的比较
- Java学习笔记(二):字符串String类
- JAVA字符串学习笔记
- Java字符串学习笔记
- JAVA学习笔记之字符串
- Java学习笔记-《Java程序员面试宝典》-第四章基础知识-4.5字符串与数组(4.5.1-4.5.3)
- java学习笔记_关于字符串概述
- Java之数据结构基础、线性表、栈和队列、数组和字符串,树—学习笔记
- 第五天04 JAVA基础语法(认识对象--自动装箱、拆箱、数组基础[一维、二维数组]、for循环、数组对象、字符串对象)(学习笔记)
- Java学习笔记---字符串操作(人民币大写转换的实现)
- java学习笔记(五) -- 字符串
- 黑马程序员 java学习笔记 Day3:字符串
- (学习笔记) Java byte[]转二进制字符串,十六进制字符串的相互转换
- 学习笔记----字符串分割