Java 从从inputstream读取的csv文件中解析数组的第一项时出现问题 该文件是从CSV读取的。嗯 字符串用分号分隔。嗯 解析数组的第一个字符串将返回NumberformatException。错误
问题是我数组的第一个索引有一个“ascii 65279”,所以我 通过在一个字符数组中拆分这个索引并检索 它的长度Java 从从inputstream读取的csv文件中解析数组的第一项时出现问题 该文件是从CSV读取的。嗯 字符串用分号分隔。嗯 解析数组的第一个字符串将返回NumberformatException。错误,java,arrays,parseint,Java,Arrays,Parseint,问题是我数组的第一个索引有一个“ascii 65279”,所以我 通过在一个字符数组中拆分这个索引并检索 它的长度 n=readFromCsv.split(“;”); for(字符串st:n){ char[]charr=st.toCharArray(); 字符串str=“”; StringBuilder sb=新的StringBuilder(); for(char c:charr){ int-asci=(int)c; //这将验证它是否在数字范围内 如果(asci>=48&&asci 问题是我数
n=readFromCsv.split(“;”);
for(字符串st:n){
char[]charr=st.toCharArray();
字符串str=“”;
StringBuilder sb=新的StringBuilder();
for(char c:charr){
int-asci=(int)c;
//这将验证它是否在数字范围内
如果(asci>=48&&asci
问题是我数组的第一个索引有一个“ascii 65279”,所以我
通过在一个字符数组中拆分这个索引并检索
它的长度
n=readFromCsv.split(“;”);
for(字符串st:n){
char[]charr=st.toCharArray();
字符串str=“”;
StringBuilder sb=新的StringBuilder();
for(char c:charr){
int-asci=(int)c;
//这将验证它是否在数字范围内
如果(asci>=48&&asci请从CSV文件中添加一些数据。需要检查您的CSV数据文件可能包含非数字值通常CSV文件包含逗号行(或其他字符)分隔数据。它还可以包含一个标题行作为描述数据列名称的第一行文件。您正在将CSV文件读入一个字符串变量。这是您的意图还是CSV文件包含一列数字?除非您提供一个部分示例说明数据是如何连续的,否则无法知道请记住,Integer.parseInt()方法只能处理整数的字符串表示形式(除-或+前缀外,不允许使用alpha字符)。大家好,事实上,问题是我数组的第一个索引有一个“ascii 65279”,因此,我通过尝试将此索引拆分为一个字符数组并检索其长度来解决此问题。也许我需要将此帖子还原为已解决的,但我还不知道如何处理,这是我的第一次延迟。请从CSV文件中添加一些数据。需要检查您的CSV数据文件可能包含非数值通常CSV文件包含逗号行(或其他字符)分隔数据。它还可以包含一个标题行作为描述数据列名称的第一行文件。您正在将CSV文件读入一个字符串变量。这是您的意图还是CSV文件包含一列数字?除非您提供一个部分示例说明数据是如何连续的,否则无法知道请记住,Integer.parseInt()方法只能处理整数的字符串表示形式(除-或+前缀外,不允许使用alpha字符)。大家好,事实上,问题是我数组的第一个索引有一个“ascii 65279”,所以我通过尝试在一个char数组中拆分这个索引并检索它的长度来解决这个问题,也许我需要将这篇文章作为已解决的问题进行declate,但我还不知道如何解决,这是我的第一篇文章
public static void main(String[] args) throws FileNotFoundException, IOException {
File inputF = new File("C:\\chatse\\Estatistica\\dados.csv");
InputStream inputFS = new FileInputStream(inputF);
BufferedReader in = new BufferedReader(new InputStreamReader(inputFS));
String line;
String readFromCsv = "";
while ((line = in.readLine()) != null) {
readFromCsv += line + ";";
}
in.close();
String read = readFromCsv.trim();
String[] n = read.split(";");
ArrayList<String> lista = new ArrayList<>();
for (String st : n) {
lista.add(st);
}
ArrayList<Integer> nlistNum = new ArrayList<>();
for (String data : lista) {
int pp Integer.Valueof(data); //tried this,
int pp Integer.parseInt(data); // this,
int pp = new Integer(data); // and this.
nlistNum.add(pp);
}
n = readFromCsv.split(";");
for (String st : n) {
char[] charr = st.toCharArray();
String str = "";
StringBuilder sb = new StringBuilder();
for (char c : charr) {
int asci = (int) c;
//this verify if it is in the range of number
if (asci >= 48 && asci <= 57) {
sb.append(c);
}
}
str = sb.toString();
int novoInt = Integer.valueOf(str);
nlistNum.add(novoInt);
}