private static Hsp3Dictionary FromParser(TextFieldParser parser) { Hsp3Dictionary ret = new Hsp3Dictionary(); parser.SetDelimiters(new string[] { "," }); parser.CommentTokens = new string[] { "#" }; while (!parser.EndOfData) { string[] tokens = parser.ReadFields(); if (tokens.Length == 0) { continue; } if (tokens[0].StartsWith("$")) { switch (tokens[0]) { case "$Code": ret.loadCodeDictionary(parser); break; case "$ParamType": ret.loadParamDictionary(parser); break; } } } return(ret); }
internal static Hsp3Dictionary FromFile(string filePath) { Hsp3Dictionary ret = null; Stream stream = null; TextFieldParser parser = null; try { stream = new FileStream(filePath, FileMode.Open, FileAccess.Read); parser = new TextFieldParser(stream, Encoding.GetEncoding("SHIFT-JIS")); ret = Hsp3Dictionary.FromParser(parser); } catch { return(null); } finally { if (parser != null) { parser.Close(); } else if (stream != null) { stream.Close(); } } return(ret); }