当前位置: 首页 > news >正文

国内设计精美的网站百度大数据

国内设计精美的网站,百度大数据,网站建设主要流程,网站平台专题如何制作在项目开发中#xff0c;我们经常需要读取csv的内容的操作。读取的逻辑并不复杂。主要是对有换行的#xff0c;逗号#xff0c;引号的处理恰当的话就没问题了。下面作为memo#xff0c;把在项目中的读取方法拷贝了过来。有了下面的这些方法#xff0c;在CSV的读取和输出的…在项目开发中我们经常需要读取csv的内容的操作。读取的逻辑并不复杂。主要是对有换行的逗号引号的处理恰当的话就没问题了。下面作为memo把在项目中的读取方法拷贝了过来。有了下面的这些方法在CSV的读取和输出的时候都非常方便。package com.han.csv.util;import java.io.BufferedReader;import java.io.FileInputStream;import java.io.InputStreamReader;import java.util.ArrayList;public class CSVFileUtil {// CSV文件编码public static final String ENCODE UTF-8;private FileInputStream fis null;private InputStreamReader isw null;private BufferedReader br null;public CSVFileUtil(String filename) throws Exception {fis new FileInputStream(filename);isw new InputStreamReader(fis, ENCODE);br new BufferedReader(isw);}// 以下是公开方法/*** 从CSV文件流中读取一个CSV行。** throws Exception*/public String readLine() throws Exception {StringBuffer readLine new StringBuffer();boolean bReadNext true;while (bReadNext) {//if (readLine.length() 0) {readLine.append(\r\n);}// 一行String strReadLine br.readLine();// readLine is Nullif (strReadLine null) {return null;}readLine.append(strReadLine);// 如果双引号是奇数的时候继续读取。考虑有换行的是情况。if (countChar(readLine.toString(), , 0) % 2 1) {bReadNext true;} else {bReadNext false;}}return readLine.toString();}/***把CSV文件的一行转换成字符串数组。指定数组长度不够长度的部分设置为null。*/public static String[] fromCSVLine(String source, int size) {ArrayList tmpArray fromCSVLinetoArray(source);if (size tmpArray.size()) {size tmpArray.size();}String[] rtnArray new String[size];tmpArray.toArray(rtnArray);return rtnArray;}/*** 把CSV文件的一行转换成字符串数组。不指定数组长度。*/public static ArrayList fromCSVLinetoArray(String source) {if (source null || source.length() 0) {return new ArrayList();}int currentPosition 0;int maxPosition source.length();int nextComma 0;ArrayList rtnArray new ArrayList();while (currentPosition maxPosition) {nextComma nextComma(source, currentPosition);rtnArray.add(nextToken(source, currentPosition, nextComma));currentPosition nextComma 1;if (currentPosition maxPosition) {rtnArray.add();}}return rtnArray;}/*** 把字符串类型的数组转换成一个CSV行。(输出CSV文件的时候用)*/public static String toCSVLine(String[] strArray) {if (strArray null) {return ;}StringBuffer cvsLine new StringBuffer();for (int idx 0; idx strArray.length; idx) {String item addQuote(strArray[idx]);cvsLine.append(item);if (strArray.length - 1 ! idx) {cvsLine.append(,);}}return cvsLine.toString();}/*** 字符串类型的List转换成一个CSV行。(输出CSV文件的时候用)*/public static String toCSVLine(ArrayList strArrList) {if (strArrList null) {return ;}String[] strArray new String[strArrList.size()];for (int idx 0; idx strArrList.size(); idx) {strArray[idx] (String) strArrList.get(idx);}return toCSVLine(strArray);}// 以下是内部使用的方法/***计算指定文字的个数。** param str 文字列* param c 文字* param start 开始位置* return 个数*/private int countChar(String str, char c, int start) {int i 0;int index str.indexOf(c, start);return index -1 ? i : countChar(str, c, index 1) 1;}/*** 查询下一个逗号的位置。** param source 文字列* param st 检索开始位置* return 下一个逗号的位置。*/private static int nextComma(String source, int st) {int maxPosition source.length();boolean inquote false;while (st maxPosition) {char ch source.charAt(st);if (!inquote ch ,) {break;} else if ( ch) {inquote !inquote;}st;}return st;}/*** 取得下一个字符串*/private static String nextToken(String source, int st, int nextComma) {StringBuffer strb new StringBuffer();int next st;while (next nextComma) {char ch source.charAt(next);if (ch ) {if ((st 1 next next nextComma) (source.charAt(next) )) {strb.append(ch);next;}} else {strb.append(ch);}}return strb.toString();}/*** 在字符串的外侧加双引号。如果该字符串的内部有双引号的话把转换成。** param item 字符串* return 处理过的字符串*/private static String addQuote(String item) {if (item null || item.length() 0) {return \\;}StringBuffer sb new StringBuffer();sb.append();for (int idx 0; idx item.length(); idx) {char ch item.charAt(idx);if ( ch) {sb.append(\\);} else {sb.append(ch);}}sb.append();return sb.toString();}}
http://wiki.neutronadmin.com/news/132607/

相关文章:

  • 网络网站网站怎么做的整形网站源码
  • 学校网站建设评比活动获奖网站建设公司相关资质
  • wordpress建站教程书籍网站建站网站微信公众号开发
  • 动叫建个网站刷排名广州seo网站营销
  • 宜昌网站建设哪家好企业网站建设运营的灵魂是什么
  • 企业网站建设哪家网站建设教程 乐视网
  • dw网站制作模板域名备案与网站备案
  • 杭州培训网站建设福田庆三
  • 重庆响应式网站设计网站流量增加
  • 谁的网站模板利于优化常熟网站制作
  • 有什么网站可以做平面兼职个人做网站郊游的英
  • 打代码怎么做网站广告设计公司的未来
  • 分析建设网站的可行性分析seo教程视频
  • 怎么做wp网站国家企业信息公示系统登录入口
  • 淄博网站快照优化公司photoshop网站模板设计教程视频
  • 在线课程网站建设规范wordpress架构分析
  • 公司手机网站建设网站开发协议合作
  • 网站建设中手机版汕头市澄海建设局门户网站
  • 响应式企业网站案例seo排名是什么意思
  • 网站建设如何空间绑定域名网站对于企业的
  • 用dw做的网站怎么发布到网上松原建设网站
  • 图片分页网站模板设计的网站源代码怎么做
  • 个人博客网站需要备案吗可以自己做装修效果图的网站
  • 网站注册信息查询成都自适应建站哪家好
  • 农机局网站建设方案wordpress 书籍主题
  • 网络科技官网网站建设怎么做二维码直接进入网站
  • 关于h5的网站柳州建设局网站
  • 南昌企业网站设计公司国外socks5代理ip地址2023
  • 网站是asp还是php专门做酒店自助餐的网站
  • 网站建设开发案例教程视频教程温州论坛网站首页