diff --git a/Axiom/Axiom.Core/Utility/Utility.cs b/Axiom/Axiom.Core/Utility/Utility.cs
index 1f75079..f4c1c60 100755
--- a/Axiom/Axiom.Core/Utility/Utility.cs
+++ b/Axiom/Axiom.Core/Utility/Utility.cs
@@ -9,6 +9,9 @@ namespace Axiom.Utils
{
public class Utility
{
+ private static readonly System.Globalization.CultureInfo cultureInfo = new System.Globalization.CultureInfo("en-US");
+ private static readonly String[] formats = new[] { "yyyy/MM/dd","M-d-yyyy", "dd-MM-yyyy", "MM-dd-yyyy", "M.d.yyyy", "dd.MM.yyyy", "MM.dd.yyyy","yyyyMMdd" }.Union(cultureInfo.DateTimeFormat.GetAllDateTimePatterns()).ToArray();
+
private Utility()
{
}
@@ -62,10 +65,8 @@ namespace Axiom.Utils
}
public static DateTime ParseDate(String strDate)
{
- System.Globalization.CultureInfo cultureInfo = new System.Globalization.CultureInfo("en-US");
- String[] formats = new[] { "yyyy/MM/dd","M-d-yyyy", "dd-MM-yyyy", "MM-dd-yyyy", "M.d.yyyy", "dd.MM.yyyy", "MM.dd.yyyy","yyyyMMdd" }.Union(cultureInfo.DateTimeFormat.GetAllDateTimePatterns()).ToArray();
strDate = strDate.Trim();
- DateTime dateTime=DateTime.ParseExact(strDate, formats, new System.Globalization.CultureInfo("en-US"), DateTimeStyles.AssumeLocal);
+ DateTime dateTime=DateTime.ParseExact(strDate, formats, cultureInfo, DateTimeStyles.AssumeLocal);
return dateTime;
}
public static String AddQuotes(String item)
diff --git a/MarketData/MarketDataLib/Helper/MarketDataHelper.cs b/MarketData/MarketDataLib/Helper/MarketDataHelper.cs
index 8762b3b..8b06ca5 100755
--- a/MarketData/MarketDataLib/Helper/MarketDataHelper.cs
+++ b/MarketData/MarketDataLib/Helper/MarketDataHelper.cs
@@ -178,7 +178,7 @@ namespace MarketData.Helper
// ************************************************************************** Z A C K S E A R N I N G S A N N O U N C E M E N T S *******************************************
// ******************************************************************************************************************************************************************************
///
- /// This retrieves earnings announcements from Zacks Research and is used during the nighyly process.
+ /// This retrieves earnings announcements from Zacks Research and is used during the nightly process.
///
///
///
@@ -349,6 +349,9 @@ namespace MarketData.Helper
public static Splits GetSplits()
{
HttpNetResponse httpNetResponse = null;
+ System.Globalization.CultureInfo cultureInfo = new System.Globalization.CultureInfo("en-US");
+ String format="dd MMM yyyy";
+
try
{
Splits splits = new Splits();
@@ -380,7 +383,7 @@ namespace MarketData.Helper
if (null != dataColumns[0]) split.Exchange = dataColumns[0].InnerText.Trim().ToUpper(); // exchange
if (null != dataColumns[1]) split.Symbol = dataColumns[1].InnerText.Trim().ToUpper(); // symbol
if (null != dataColumns[2]) split.EffectiveDate = DateTime.ParseExact(dataColumns[2].InnerText.Trim().ToUpper(),
- "dd MMM yyyy", new System.Globalization.CultureInfo("en-US"), DateTimeStyles.AssumeLocal);
+ format, cultureInfo, DateTimeStyles.AssumeLocal);
if (null != dataColumns[3]) split.StrRatio = dataColumns[3].InnerText.Trim().ToUpper(); // ratio
splits.Add(split);
}
@@ -2926,6 +2929,11 @@ namespace MarketData.Helper
{
TimeSeriesCollection timeSeriesCollection = new TimeSeriesCollection();
Dictionary dates = new Dictionary();
+ System.Globalization.CultureInfo cultureInfo = new System.Globalization.CultureInfo("en-US");
+ string[]formatyyyy =new string[]{"yyyy"};
+ string[]formatyyyyHMM =new string[]{"yyyy"};
+
+
DateTime today=DateTime.Now;
try
{
@@ -2951,7 +2959,7 @@ namespace MarketData.Helper
if(strDateElement.Length.Equals(4))
{
- bool result=DateTime.TryParseExact(strDateElement, new string[]{"yyyy"}, new System.Globalization.CultureInfo("en-US"), DateTimeStyles.AssumeLocal,out reportDate);
+ bool result=DateTime.TryParseExact(strDateElement, formatyyyy, cultureInfo, DateTimeStyles.AssumeLocal,out reportDate);
if(!result)continue;
if(reportDate.Year.Equals(today.Year))
{
@@ -2964,7 +2972,7 @@ namespace MarketData.Helper
}
else
{
- bool result=DateTime.TryParseExact(strDateElement, new string[]{"yyyy-MM"}, new System.Globalization.CultureInfo("en-US"), DateTimeStyles.AssumeLocal,out reportDate);
+ bool result=DateTime.TryParseExact(strDateElement, formatyyyyHMM, cultureInfo, DateTimeStyles.AssumeLocal,out reportDate);
if(!result)continue;
}
TimeSeriesElement timeSeriesElement = new TimeSeriesElement();
@@ -3240,6 +3248,10 @@ namespace MarketData.Helper
private static Dictionary> CreateDictionaryByDate(Dictionary dataSets)
{
+ System.Globalization.CultureInfo cultureInfo = new System.Globalization.CultureInfo("en-US");
+ String[] formatyyyy = new string[]{"yyyy"};
+ String[] formatyyyyHMM = new string[]{"yyyy-MM"};
+
try
{
DateTime today=DateTime.Now;
@@ -3256,7 +3268,7 @@ namespace MarketData.Helper
DateTime reportDate=Utility.Epoch;
if(strDateElement.Length.Equals(4))
{
- bool result=DateTime.TryParseExact(strDateElement, new string[]{"yyyy"}, new System.Globalization.CultureInfo("en-US"), DateTimeStyles.AssumeLocal,out reportDate);
+ bool result=DateTime.TryParseExact(strDateElement, formatyyyy, cultureInfo, DateTimeStyles.AssumeLocal,out reportDate);
if(!result)continue;
if(reportDate.Year.Equals(today.Year))
{
@@ -3269,7 +3281,7 @@ namespace MarketData.Helper
}
else
{
- bool result=DateTime.TryParseExact(strDateElement, new string[]{"yyyy-MM"}, new System.Globalization.CultureInfo("en-US"), DateTimeStyles.AssumeLocal,out reportDate);
+ bool result=DateTime.TryParseExact(strDateElement, formatyyyyHMM, cultureInfo, DateTimeStyles.AssumeLocal,out reportDate);
if(!result)continue;
}
diff --git a/MarketData/MarketDataLib/Utility/FeedParser.cs b/MarketData/MarketDataLib/Utility/FeedParser.cs
index 3786722..6700d9a 100755
--- a/MarketData/MarketDataLib/Utility/FeedParser.cs
+++ b/MarketData/MarketDataLib/Utility/FeedParser.cs
@@ -11,6 +11,8 @@ namespace MarketData.Utils
{
public class FeedParser
{
+ private static readonly System.Globalization.CultureInfo cultureInfo = new System.Globalization.CultureInfo("en-US");
+
private FeedParser()
{
}
@@ -58,6 +60,7 @@ namespace MarketData.Utils
periodEnding = periodEnding.Replace("Period Ending", "");
int length = periodEnding.Length;
int index = 0;
+
while (index < length)
{
String strMonth = periodEnding.Substring(index, 3);
@@ -69,7 +72,7 @@ namespace MarketData.Utils
sb = new StringBuilder();
for (int yIndex = 0; yIndex < 5; yIndex++) sb.Append(periodEnding[index++]);
String strYear = sb.ToString().Trim();
- DateTime periodEndingDate = DateTime.ParseExact(strMonth + Utility.Pad(strDay, '0', 2) + strYear, "MMMddyyyy", new System.Globalization.CultureInfo("en-US"));
+ DateTime periodEndingDate = DateTime.ParseExact(strMonth + Utility.Pad(strDay, '0', 2) + strYear, "MMMddyyyy", cultureInfo);
periodEndingDates.Add(periodEndingDate);
}
return periodEndingDates;
@@ -85,12 +88,12 @@ namespace MarketData.Utils
strText = strText + " " + DateTime.Now.Year.ToString();
string[] items = strText.Split(' ');
strText = items[0] + "-" + Utility.Pad(items[1], '0', 2) + "-" + items[2];
- return DateTime.ParseExact(strText, "MMM-dd-yyyy", new System.Globalization.CultureInfo("en-US"));
+ return DateTime.ParseExact(strText, "MMM-dd-yyyy", cultureInfo);
}
else
{
strText = strText.Replace(" ", "0");
- return DateTime.ParseExact(strText, "dd-MMM-yy", new System.Globalization.CultureInfo("en-US"));
+ return DateTime.ParseExact(strText, "dd-MMM-yy", cultureInfo);
}
}
catch (Exception)
diff --git a/MarketData/MarketDataLib/Utility/Utility.cs b/MarketData/MarketDataLib/Utility/Utility.cs
index 034955c..d2c41b2 100755
--- a/MarketData/MarketDataLib/Utility/Utility.cs
+++ b/MarketData/MarketDataLib/Utility/Utility.cs
@@ -11,8 +11,10 @@ namespace MarketData.Utils
{
public class Utility
{
- private static DateTime epoch = DateTime.Parse("01-01-0001");
- private static TimeSpan oneDay=new TimeSpan(1,0,0,0);
+ private static readonly DateTime epoch = DateTime.Parse("01-01-0001");
+ private static readonly TimeSpan oneDay=new TimeSpan(1,0,0,0);
+ private static readonly System.Globalization.CultureInfo cultureInfo = new System.Globalization.CultureInfo("en-US");
+ private static readonly String[] formats=new[] { "MMMM dd,yyyy" ,"yyyy-MM-dd HH:mm:ss","MM/dd/yyyy HH:MM tt", "yyyy-MM-dd","yy-MM-dd","yyyy-MM-dd hh:mm:ss tt","dddd, MMMM dd","MMM dd yyyy","yyyy-MM","ddd, MMM. d","ddd, MMM. dd","yyyy/MM/dd","M-d-yyyy","dd-MM-yyyy","MM-dd-yyyy","M.d.yyyy","dd.MM.yyyy","MM.dd.yyyy","yyyyMMdd" }.Union(cultureInfo.DateTimeFormat.GetAllDateTimePatterns()).ToArray();
public static bool IsProcessRunning(String processName, List commandArgs)
{
@@ -608,9 +610,6 @@ namespace MarketData.Utils
}
public static DateTime ParseDate(String strDate)
{
- System.Globalization.CultureInfo cultureInfo = new System.Globalization.CultureInfo("en-US");
-
- String[] formats=new[] { "MMMM dd,yyyy" ,"yyyy-MM-dd HH:mm:ss","MM/dd/yyyy HH:MM tt", "yyyy-MM-dd","yy-MM-dd","yyyy-MM-dd hh:mm:ss tt","dddd, MMMM dd","MMM dd yyyy","yyyy-MM","ddd, MMM. d","ddd, MMM. dd","yyyy/MM/dd","M-d-yyyy","dd-MM-yyyy","MM-dd-yyyy","M.d.yyyy","dd.MM.yyyy","MM.dd.yyyy","yyyyMMdd" }.Union(cultureInfo.DateTimeFormat.GetAllDateTimePatterns()).ToArray();
strDate = strDate.Trim();
DateTime dateTime=DateTime.ParseExact(strDate, formats, cultureInfo, DateTimeStyles.AssumeLocal);
return dateTime;
diff --git a/eNavigator/MarketDataLib/Utility/Utility.cs b/eNavigator/MarketDataLib/Utility/Utility.cs
index a32c8e7..2a31c92 100755
--- a/eNavigator/MarketDataLib/Utility/Utility.cs
+++ b/eNavigator/MarketDataLib/Utility/Utility.cs
@@ -10,6 +10,8 @@ namespace MarketData.Utils
{
private static DateTime epoch = DateTime.Parse("01-01-0001");
private static TimeSpan oneDay=new TimeSpan(1,0,0,0);
+ private static readonly System.Globalization.CultureInfo cultureInfo = new System.Globalization.CultureInfo("en-US");
+ private static readonly String[] formats = new[] {"dddd, MMMM dd","MMM dd yyyy","yyyy-MM","ddd, MMM. d","ddd, MMM. dd", "yyyy/MM/dd","M-d-yyyy", "dd-MM-yyyy", "MM-dd-yyyy", "M.d.yyyy", "dd.MM.yyyy", "MM.dd.yyyy","yyyyMMdd" }.Union(cultureInfo.DateTimeFormat.GetAllDateTimePatterns()).ToArray();
public static String ToUrl(String prefix, String ipAddress, String postfix)
{
@@ -339,10 +341,8 @@ namespace MarketData.Utils
}
public static DateTime ParseDate(String strDate)
{
- System.Globalization.CultureInfo cultureInfo = new System.Globalization.CultureInfo("en-US");
- String[] formats = new[] {"dddd, MMMM dd","MMM dd yyyy","yyyy-MM","ddd, MMM. d","ddd, MMM. dd", "yyyy/MM/dd","M-d-yyyy", "dd-MM-yyyy", "MM-dd-yyyy", "M.d.yyyy", "dd.MM.yyyy", "MM.dd.yyyy","yyyyMMdd" }.Union(cultureInfo.DateTimeFormat.GetAllDateTimePatterns()).ToArray();
strDate = strDate.Trim();
- DateTime dateTime=DateTime.ParseExact(strDate, formats, new System.Globalization.CultureInfo("en-US"), DateTimeStyles.AssumeLocal);
+ DateTime dateTime=DateTime.ParseExact(strDate, formats, cultureInfo, DateTimeStyles.AssumeLocal);
return dateTime;
}
public static double ParsePercent(String strPercent)