如何在c#中编写这个java代码

时间:2011-02-21 09:42:03

标签: c# java

我有这个java代码,我想翻译成c#:

ByteArrayOutputStream baos = new ByteArrayOutputStream();
PrintStream ps = new PrintStream(baos);
ps.printf("\n\n+++++ %s %s\n",Environment.UserName, new SimpleDateFormat("MM/dd/yyyy HH:mm:ss aa").format(new Date()));

3 个答案:

答案 0 :(得分:4)

类似的东西:

  // You can use "using" blocks guarantee streams are disposed (like try/finally { boas.Close(); })
  using (var baos = new MemoryStream())
  {
    // Stream encodes as UTF-8 by default; specify other encodings in this constructor
    using (var ps = new StreamWriter(baos))
    {
      // Format string almost the same, but 'tt' for 'am/pm'
      // Could also use move formatting into
      //    DateTime.Now.ToString("MM/dd/yyyy HH:mm:ss tt")
      // or ToLongDateString and ToLongTimeString for locale-defined formats
      ps.Write("\n\n+++++ {0} {1:MM/dd/yyyy HH:mm:ss tt}\n", Environment.UserName, DateTime.Now);

      // Need to close or flush the StreamWriter stream before the bytes will
      // appear in the MemoryStream
      ps.Close();
    }

    // Extract bytes from MemoryStream
    var bytes = baos.ToArray();
  }

答案 1 :(得分:3)

 string strVal = String.Format("\n\n+++++ {0} {1}\n", System.Environment.UserName, String.Format(
"{0:MM/dd/yyyy}", DateTime.Now));

Console.Write(strVal);

答案 2 :(得分:3)

MemoryStream mem = new MemoryStream();
StreamWriter writer = new StreamWriter(mem);

writer.WriteLine(String.Format("\n\n+++++ {0} {1}\n",Environment.UserName,DateTime.Now.ToString()));

或类似的东西......