В этой последовательности!
риложение читает файл Excel с помощью VSTO и добавляет прочитанные данные вStringDictionary
, Добавляются только данные, представляющие собой числа с несколькими цифрами (1000 1000,2 1000,34 - запятая является разделителем в российских стандартах).
Что лучше проверить, является ли текущая строка соответствующим числом?
object data, string key; // data had read
try
{
Convert.ToDouble(regionData, CultureInfo.CurrentCulture);
dic.Add(key, regionData.ToString());
}
catch (InvalidCastException)
{
// is not a number
}
или же
double d;
string str = data.ToString();
if (Double.TryParse(str, out d)) // if done, then is a number
{
dic.Add(key, str);
}
Я должен использоватьStringDictionary
вместоDictionary<string, double>
из-за следующих проблем алгоритма синтаксического анализа.
Мои вопросы: какой путь быстрее? Что безопаснее?
И лучше ли звонитьConvert.ToDouble(object)
или жеConvert.ToDouble(string)
?