19 EKİM 2008, Pazar
Bir Dize içine bir OutputStream olsun
Bir java çıktısı boru için en iyi yolu nedir.ıo.Java'da bir String için OutputStream?
Söylediğin yöntem var:
writeToStream(Object o, OutputStream out)
Verilen stream nesnesi, belirli veri yazar. Ancak, bir Dize içine bu çıkış olabildiğince kolay bir şekilde almak istiyorum.
Böyle bir sınıf () denenmemiş yazmayı düşünüyorum:
class StringOutputStream extends OutputStream {
StringBuilder mBuf;
public void write(int byte) throws IOException {
mBuf.append((char) byte);
}
public String getString() {
return mBuf.toString();
}
}
Ama orada daha iyi bir yolu var mı? Ben sadece bir test yapmak istiyorum.
CEVAP
19 EKİM 2008, Pazar
ByteArrayOutputStream
bir kullanırdım. Ve son arayabilirsiniz:
new String( baos.toByteArray(), codepage );
ya da daha iyi
baos.toString( codepage );
String oluşturucu için codepage
bir Dize veya java.nio.charset.Charset Bir örnek olabilir. Olası bir değer java.nio.charset.StandardCharsets.UTF_8.
Yöntem olabilirdi codepage
parametre (Java 8 stand) olarak tek bir Dize kabul eder.
Bunu Paylaş:
Bir dize için SimpleXML Nesnesi zorlam...
Ayrıştırma JSON JavaScript Nesne, Beli...
C URI dize dosya adı olsun#...
Tek satır içine Virgülle Ayrılmış bir ...
BestPractice - küçük harf içine bir di...