2010-05-02から1日間の記事一覧

id:kmizushimaさんがさらに短くカッコよく添削

object StringDump{ def main(args: Array[String])={ println(dump(args(0))) } def dump(str:String):String={ str.getBytes("UTF-8").map{ case 34 => "\\\"" case 92 => "\\\\" case n if 32 <= n && n <= 126 => new String(Array[Byte](n)) case n if …

早速id:kmizushimaさんが添削してくださいました

object StringDump{ def main(args: Array[String])={ println(dump(args(0))) } def dump(str:String):String={ val buf = new StringBuffer buf append "\"" str.getBytes("UTF-8").foreach{ case 34 => buf append "\\\"" case 92 => buf append "\\\\" c…

RubyのString#dumpの実装

Scalaで文字列をコンソールに出力しようとしたときに マルチバイト文字が入っていたりすると 文字化けをして非常によろしくない。 RubyだとString#dumpの結果を出力すればいいのですが、 Javaにそういうものはないらしい。 Scalaにもなさそうだ。 というわけ…

ymnkさんによる添削

我らが東北が誇るEclipseとLiftのコミッタである 山中さんの添削 object StringDump{ implicit def enrichString(str: String) = new { def dump:String={ str.getBytes("UTF-8").map{ _.asInstanceOf[Char] match{ case n @ ('"' | '\\') => "\\" + n case …