- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试生成并从 CSV 文件加载,但 CSVPrinter 出现问题。声明如下:
Cannot resolve constructor 'CSVPrinter(java.io.BufferedWriter,org.apache.commons.csv.CSVFormat)"
import org.apache.commons.csv.CSVFormat;
import org.apache.commons.csv.CSVParser;
import org.apache.commons.csv.CSVPrinter;
import org.apache.commons.csv.CSVRecord;
import java.io.BufferedWriter;
import java.io.*;
import java.net.URL;
import java.nio.file.Files;
import java.nio.file.Paths;
try (BufferedWriter writer = Files.newBufferedWriter(Paths.get(file.getAbsolutePath()));
CSVPrinter csvPrinter = new CSVPrinter(writer, CSVFormat.DEFAULT
.withHeader("title", "description", "priority"))
) {
for (int i = 0; i < serializer.toDO.size(); i++){
csvPrinter.printRecord(serializer.toDO.get(i).getTitle(),
serializer.toDO.get(i).getDescription().replace("\n"," "),
serializer.toDO.get(i).getPriority(),
serializer.toDO.get(i).getLocalDate(),
"toDo");
}
最佳答案
假设您使用的是 apache 变体,您的代码对我有用。
我认为您需要添加一些您向我们保证已完成的细节。我的猜测是您的项目/类路径中有错误的库。
这是我的源代码版本:
package csvwriter;
import java.io.BufferedWriter;
import java.io.File;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.logging.Level;
import java.util.logging.Logger;
import org.apache.commons.csv.CSVPrinter;
import org.apache.commons.csv.CSVFormat;
public class Main {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
Main m = new Main();
m.go(args);
}
public void go(String [] args) {
File file = new File (args[0]);
try (BufferedWriter writer = Files.newBufferedWriter(Paths.get(file.getAbsolutePath()));
CSVPrinter csvPrinter = new CSVPrinter(writer, CSVFormat.DEFAULT
.withHeader("title", "description", "priority"))
) {
System.out.println("Done.");
// for (int i = 0; i < serializer.toDO.size(); i++){
// csvPrinter.printRecord(serializer.toDO.get(i).getTitle(),
// serializer.toDO.get(i).getDescription().replace("\n"," "),
// serializer.toDO.get(i).getPriority(),
// serializer.toDO.get(i).getLocalDate(),
// "toDo");
// }
} catch (IOException ex) {
Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
这是我的图书馆:
我从apache download center下载了该库
当我运行时,我得到以下输出:
run:
Done.
BUILD SUCCESSFUL (total time: 0 seconds)
通过 Maven 在 IntelliJ(Java 项目,合并 apache-commons-csv-1.6)中重复此练习,会产生相同的结果:
"C:\Program Files\Java\jdk1.8.0_172\bin\java.exe" "-javaagent:C:\Program Files\JetBrains\IntelliJ IDEA Community Edition 2019.1\lib\idea_rt.jar=59482:C:\Program Files\JetBrains\IntelliJ IDEA Community Edition 2019.1\bin" -Dfile.encoding=UTF-8 -classpath "C:\Program Files\Java\jdk1.8.0_172\jre\lib\charsets.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\deploy.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\ext\access-bridge-64.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\ext\cldrdata.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\ext\dnsns.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\ext\jaccess.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\ext\jfxrt.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\ext\localedata.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\ext\nashorn.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\ext\sunec.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\ext\sunjce_provider.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\ext\sunmscapi.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\ext\sunpkcs11.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\ext\zipfs.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\javaws.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\jce.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\jfr.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\jfxswt.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\jsse.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\management-agent.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\plugin.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\resources.jar;C:\Program Files\Java\jdk1.8.0_172\jre\lib\rt.jar;C:\cygwin64\home\gm310509\Projects\Learning\Miscellaneous\CSVPrinter\out\production\CSVPrinter;C:\cygwin64\home\gm310509\Projects\Learning\Miscellaneous\CSVPrinter\lib\commons-csv-1.6.jar" stackoverflow.Main c:\temp\resistor.html
Done.
Process finished with exit code 0
这是“通过 Maven 添加库”对话框:
关于java - 问题: cannot resolve constructor CSVPrinter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56071925/
当值被引用时,我需要在模式下使用 Apache 的 commons 中的 CSVPrinter,但标题不是。看起来只有报价模式选项,影响标题和值。这可以独立完成吗? CSVFormat format
我正在使用CSVPrinter class来自 Apache Commons 以便输出 CSV 文件。我希望发生的是,如果给定字段中包含任何空格,则它将被封装在引号中。但是,如果它只是一长串数字或日期
我正在尝试生成并从 CSV 文件加载,但 CSVPrinter 出现问题。声明如下: Cannot resolve constructor 'CSVPrinter(java.io.BufferedWr
这个问题是 this one 的延伸。OP 要求在 CSVPrinter 的帮助下打印 Guava 表: final Table graph = HashBasedTable.create(); gr
我有一个 CSV 文件,该文件是由我正在编写的程序以外的程序创建的,因此我无法更改标题。文件的 header 为 ControllerID,Event,Number,ReaderID,Timestam
在已经关闭的 CSVPrinter 实例上调用 close() 是无操作吗?那么flush()呢?没有找到任何相关文档。 最佳答案 Is calling close() on a already cl
我有这个类,其中包含使用 Apache Common CSV 库 1.5 生成 CSV 文件的方法 public class CSVGenerator { private static fin
我正在使用 CSVPrinter 来读取和写入 CSV。在编写 CSV 时,我想写一个空白列,例如“x”,“y”(第二列)。但不幸的是它写成“x”,“”,“y”。如何使用 CSVPrinter 写入空
我在一个方法中传递一个 CSVPrinter 打印机,并在内部循环中调用 printRecord 方法。下面是该方法的片段。 private void printToCsv(String curren
我是一名优秀的程序员,十分优秀!