zoukankan      html  css  js  c++  java
  • openCSV.jar解析CSV文件时,文件中有文件路径时的解析

    C:\SystemUser\UniEAP V3.3.0\workspace\zzbx\EAPDomain\WEB-INF\lib

    以上路径解析后,会变成:C:SystemUserUniEAP V3.3.0workspacezzbxEAPDomainWEB-INFlib,远非我们所要的结果。


    处理方式:重构openCSV.jar里的CSVReader文件 readNext()方法,如下

    /**
    	 * 重构,支持解析'\'
    	 * @return
    	 * @throws IOException
    	 * @author backkom
    	 */
    	public String[] readNext() throws IOException {
    		String[] localObject = null;
    		do {
    			String str = getNextLine();
    			if(str != null){
                                       str = str.replace("\\", "\\\\");//添加此段代码
    			}
    			if (!this.hasNext)
    				return localObject;
    			String[] arrayOfString1 = this.parser.parseLineMulti(str);
    			if (arrayOfString1.length <= 0)
    				continue;
    			if (localObject == null) {
    				localObject = arrayOfString1;
    			} else {
    				String[] arrayOfString2 = new String[localObject.length
    						+ arrayOfString1.length];
    				System.arraycopy(localObject, 0, arrayOfString2, 0,
    						localObject.length);
    				System.arraycopy(arrayOfString1, 0, arrayOfString2,
    						localObject.length, arrayOfString1.length);
    				localObject = arrayOfString2;
    			}
    		} while (this.parser.isPending());
    		return localObject;
    	}

    手机扫一扫,欢迎关注公众号

    关注程序员成长

    成长的乐趣,在于分享!
    大龄程序员,一路走来,感慨颇多。闲暇时写写字,希望能给同行人一点帮助。
    本文版权归作者growithus和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    连接数据库方法
    jdbc加载驱动方法
    MySQL数据库事务隔离级别
    事务和JDBC事务隔离级别
    IO
    java中从键盘输入的三种方法
    Java IO流学习总结八:Commons IO 2.5-IOUtils
    Java IO流学习总结七:Commons IO 2.5-FileUtils
    Java IO流学习总结五:转换流-InputStreamReader、OutputStreamWriter
    Java Code Examples
  • 原文地址:https://www.cnblogs.com/growithus/p/11012324.html
Copyright © 2011-2022 走看看