【问题标题】:Clickable Email Link in Csv File created through Java Application通过 Java 应用程序创建的 Csv 文件中的可点击电子邮件链接
【发布时间】:2021-10-25 07:06:12
【问题描述】:

我在通过 Java 在 csv 中创建可点击的电子邮件链接时遇到问题。

当我使用简单的 FileWriter 类时

String ES_QUOTE = "\"";`
StringBuilder mailString = new StringBuilder();
mailString.append("=HYPERLINK(");
mailString.append("\"mailto:");
mailString.append(value);
mailString.append("\",\"");
mailString.append(value);
mailString.append("\")");
writer.append(ES_QUOTE + mailString.toString() + ES_QUOTE);

生成 csv 文件。电子邮件显示为纯文本,但是在我双击要编辑的单元格然后单击单元格之外,然后只显示预期的“下划线蓝色超链接”。

我还有另一个实现,我正在使用 OpenCsv apis CsvWriter 类,我正在尝试使用以下代码创建可点击的链接。

OutputStreamWriter osw = new OutputStreamWriter(fileOutputStream, "UTF-8");
CSVWriter writer = new CSVWriter(osw);
StringBuilder buffer = new StringBuilder();
buffer.append("=HYPERLINK(");
buffer.append("\"");
buffer.append("mailto:");
buffer.append(resultRow.get(listValue.get(count)));
buffer.append("\",\"");
buffer.append(resultRow.get(listValue.get(count)));
buffer.append("\")");
writer.writeNext(buffer.split(",(?=(?:[^\"]*\"[^\"]*\")*[^\"]*$)"));
writer.close();
osw.close();

但我得到了“HyperLink function”的整个字符串......在通过 MsExcel 打开时它甚至没有被检测为函数......

您能否提供任何解决方法..非常感谢您的帮助。 谢谢。

【问题讨论】:

  • CSV 没有超链接或格式。如果您需要格式化将要使用 Excel(或 LibreOffice)打开的内容,您应该创建一个 xls[x] 文件。
  • 兄弟实际上我已经完成了 xlsx 文件格式......它工作正常......但是对于 csv 我被卡住了......你能帮忙解释一下......如果我不得不描述某人...
  • 没什么好解释的:CSV 是纯文本格式,它没有格式。就是这样。

标签: java csv opencsv


【解决方案1】:

CSV 文件只是逗号分隔的文本。它们不包含也不能包含任何格式说明,包括特定单元格的内容是否为链接。

是否将带有超链接格式文本的单元格视为链接取决于查看应用程序(Microsoft Excel、Apple Numbers 等)。没有任何办法可以强制执行此操作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-11-06
    • 2017-02-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-17
    • 1970-01-01
    相关资源
    最近更新 更多