ものがたり(旧)

atsushieno.hatenablog.com に続く

どうでもいいJSONクイズ

この中に2つだけJSONとして無効でないnumberがあります。どれでしょう?

  1. +5
  2. -0
  3. -e5
  4. .1
  5. 01
  6. 0e5
  7. 10.
  8. 1,2
  9. e5

たぶん2つ。僕はJSON素人なので、もっとあるかも。(出題者がよく分かってないって、どういうこっちゃねん。)


using F = System.Xml.JsonReaderWriterFactory;
(snip)
byte [] bytes = Encoding.ASCII.GetBytes (str);
using (XmlReader r = F.CreateReader (bytes)) {
while (!r.EOF)
r.Read ();
}

上記コードを.NET 3.5 beta2で試してもおそらく正答は得られないので注意。

追記: 一応正解のようなものをcommitしておいた。(ReadValidNumber*()とReadInvalidNumber*()にそれぞれ該当)

追記2:(2007/12/12) .NET 3.5 RTMでnamespaceが変わったので、コードはここに移動した。