读文件内容,分割字符串,去除空格,换行,回车,制表符

package sunline.common.logic.Utils;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

import org.apache.log4j.Logger;

import com.sunline.flow.base.annotation.Bizlet;
/**
*
* @author niucc
* Created 2017/04/20
*
*/
public class FileUtils {

private static Logger log = Logger.getLogger(FileUtils.class.getName());

@Bizlet("以字节方式获取文件内容")
public static String getFileContent(String filePath)
throws FileNotFoundException {
File file = null;
InputStream in = null;
byte[] tempbytes = null;
String s = "";
try {
tempbytes = new byte[1024 * 10];
file = new File(filePath);
int byteread = 0;
in = new FileInputStream(file);
// 读入多个字节到字节数组中,byteread为一次读入的字节数
while ((byteread = in.read(tempbytes)) != -1) {
// System.out.write(tempbytes, 0, byteread);
}
s = new String(tempbytes, "UTF-8");
} catch (Exception e1) {
e1.printStackTrace();
} finally {
if (in != null) {
try {
in.close();
} catch (IOException e1) {
}
}
}
return s;
}

@Bizlet("提取文件字段放入list")
public static List<List<String>> getField(String filePath, int num) {
String str = "";
// 存放截取到的字段list
List<List<String>> fields = new ArrayList<List<String>>();
try {
// 得到文件内容
str = getFileContent(filePath);
// 去除空格,回车,换行符,制表符
str = replaceBlank(str);

//以“^|^”分割字符串,要用\\转义
String[] split = str.split("\\^\\|\\^");
// 总共多少个字段
int length = split.length - 1;
for (int j = 0; j < num; j++) {
List<String> list = new ArrayList<String>();
int start = 0;
int end = 0;
if (j == 0) {
start = 0;
end = 4;
} else {
start = j * 4;
end = (j + 1) * 4;
}
for (int i = start; i < end; i++) {
list.add(split[i]);
}
log.info("====文件内容 " + list);
fields.add(list);
}
} catch (Exception e) {
new Exception("提取文件内容出错");
}
return fields;
}

// 去除空格,回车,换行符,制表符
public static String replaceBlank(String str) {
String dest = "";
if (str != null) {
Pattern p = Pattern.compile("\\s*|\t|\r|\n");
Matcher m = p.matcher(str);
dest = m.replaceAll("");
}
return dest;
}

/*public static void main(String[] args) {
String path = "C:/Users/Administrator/Desktop/sunline/二代支付/a.txt";
List<List<String>> field = getField(path, 2);
System.out.println(field);

}*/
}

时间: 2024-10-12 22:36:26

读文件内容,分割字符串,去除空格,换行,回车,制表符的相关文章

golang 字符串去除空格和换行符

字符串去除空格和换行符 package main import ( "fmt" "strings" ) func main() { str := "这里是 www\n.aaa\n.com" fmt.Println("-------- 原字符串 ----------") fmt.Println(str) // 去除空格 str = strings.Replace(str, " ", "",

Python中常见字符串去除空格的方法总结

1:strip()方法,去除字符串开头或者结尾的空格>>> a = " a b c ">>> a.strip()'a b c'2:lstrip()方法,去除字符串开头的空格>>> a = " a b c ">>> a.lstrip()'a b c '3:rstrip()方法,去除字符串结尾的空格>>> a = " a b c ">>> a.

C++去掉字符串首尾的 空格 换行 回车

1 /* 2 *去掉字符串首尾的 \x20 \r \n 字符 3 */ 4 void TrimSpace(char* str) 5 { 6 char *start = str - 1; 7 char *end = str; 8 char *p = str; 9 while(*p) 10 { 11 switch(*p) 12 { 13 case ' ': 14 case '\r': 15 case '\n': 16 { 17 if(start + 1==p) 18 start = p; 19 }

文件内容多字符串搜索

问题: 需要精确的检测L文件内容,如果文件中同时含有"hello","name","old","floatdir"这四个词则输出正确,如果缺省其中的任何一个都需要输出错误. 文件L的内容如下: L1:hello name old floatdir L2: hello name old 解答: awk 'BEGIN{RS=""}{if($0~/floatdir/ && $0~/name/ &a

200229(matlab的读文件夹,字符串分割,F1的实现,excel写入加减形式均值方差)

批量读入文件夹文件并保存相应处理完后的结果 filePath = fullfile('E:\...'); %引号内是需要遍历的路径,填绝对路径,然后保存在fileFolderdirOutput = dir(fullfile(filePath,'*.mat')); %读取相应后缀文件fileNames = {dirOutput.name}; %取出其中的文件名属性all_accFile = fileNames(strncmp("all",fileNames,3)); % 根据文件名前三个

字符串去除空格,换行

fchrEmployees 是前端传过来多个员工编号拼接出来的字符串,由于是前端传的所以我们没办法保证是我们想要的字符串,我们可以进行下面的代码处理 fchrEmployees = fchrEmployees.Replace("\n", "").Replace(" ", "").Replace("\t", "").Replace("\r", "")

js中去掉字符串的空格、回车换行

//例如下面这个json串,中间的\n表示换行 var str = "{' retmsg':'success ',\n' trans_date':' 20170906'}"; console.log(str); //"{' retmsg':'success ', //' trans_date':' 20170906'}" //去掉空格 str = str.replace(/\ +/g,""); console.log(str); //"

nsstring 字符串去掉空格换行和括号

+ (NSString *)handleSpaceAndEnterElementWithString:(NSString *)sourceStr { NSString *realSre = [sourceStr stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]]; NSString *realSre1 = [realSre stringByReplacingOccurrencesOf

php读取文本去除空格

在使用php对mysql进行处理时,有时候要对文件内容进行读取并输出,处理时发现php对读取的文件内容输出字符串后面会有一个空格,从而影响某些操作 例如:文件 2.txt 内容如下 123 234 abc php脚本 file.php <?php $con = mysql_connect("localhost","root","111111"); if (!$con) { die('Could not connect:' .mysql_er