【问题标题】:Android Studio: Custom Writer Class extends BufferedWriter (PemWriter)Android Studio:自定义编写器类扩展了 BufferedWriter (PemWriter)
【发布时间】:2018-11-18 22:07:49
【问题描述】:

以下是我必须使用的类的示例。我已经概括了名称以了解概念而不是我的特定用途。我试图弄清楚如何使用它。所以,我不能改变这部分,只能改变我的活动:

public class MyWriter extends BufferedWriter {

public MyWriter(Writer out)
{
    super(out);
}

public void writeTest(String repeatthis) throws IOException {
    this.write(repeatthis);
    this.newLine();
    this.write("along with this other stuff.");
}
}

这是我的活动:

    String iwantThisString = "";
    StringWriter writer = new StringWriter();
    MyWriter myWriter = new MyWriter(writer);
    String myNewString = "I want to see this repeated back to me.";

    try {
        myWriter.writeTest(myNewString);
        iwantThisString = writer.toString();  //Does not work.
    } catch (IOException e) {
        e.printStackTrace();
    }
    try {
        writer.close();
    } catch (IOException e) {
        e.printStackTrace();
    }

我如何获得 iwantThisString 以获取 writeTest 正在放置的内容?

如果您想查看我尝试使用的实际类,它是 Spongy Castle 的 pemWriter。

【问题讨论】:

  • 恐怕你忘了问一个具体的问题。
  • 我已经添加了我的具体问题。谢谢

标签: java android bouncycastle spongycastle


【解决方案1】:

另外,我发现以下代码确实适用于海绵城堡库,取自: Export RSA public key to PEM String using java

    PublicKey publicKey = keyPair.getPublic();
    StringWriter writer = new StringWriter();
    PemWriter pemWriter = new PemWriter(writer);
    pemWriter.writeObject(new PemObject("PUBLIC KEY", publicKey.getEncoded()));
    pemWriter.flush();
    pemWriter.close();
    return writer.toString();

【讨论】:

    【解决方案2】:

    由于 MyWriter 扩展了 BufferedWriter,忘记刷新缓冲写入器。

        StringWriter writer = new StringWriter();
        MyWriter myWriter = new MyWriter(writer);
        String myNewString = "I want to see this repeated back to me.";
    
        try {
            myWriter.writeTest(myNewString);
        } catch (IOException e) {
            e.printStackTrace();
        }
        try {
            myWriter.flush();
            myWriter.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
        return writer.toString();
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-10-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-02-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多