本文介绍了如何在一个byte []中制作一个csv?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想知道我该如何制作一个以字节[]为单位的csv文件的方法。

I would like to know how I should make a method that makes a csv file in a byte[].

此刻我正在使用类似的方法:

At the moment I'm using something like this:

 public byte[] makeCsv(){
      StringBuffer csv= new StringBuffer();
      csv.append("columnheader1;columnheader2\r\n");
      csv.append("cell1;cell2\r\n");
      //...
      return csv.toString().getBytes();
 }

我知道我应该使用流,但现在不知道使用哪个流。 什么是最好的方法(没有IO访问权限)

I know I should be using streams but I don't now which ones. Whats the best way to do this(without IO access)?

推荐答案

没有IO,您的方法就很好。以下是一些细微的改进。

Without IO, your way is just fine. The following is a slight improvement.

  StringBuilder csv= new StringBuilder(); // Faster
  csv.append("columnheader1;columnheader2\r\n");
  csv.append("cell1;cell2\r\n");
  //...
  return csv.toString().getBytes("windows-1252"); // Windows Latin-1

您也可以使用StringWriter。

You could use a StringWriter too.

或使用PrintWriter写入ByteArrayOutputStream(内存IO)。

Or write to a ByteArrayOutputStream (in-memory IO) with a PrintWriter.

这篇关于如何在一个byte []中制作一个csv?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

07-29 13:23