在C#中,如何从字符串对象中存在的日期时间构建DateTime对象(String strDate ="11/11/2009")?
在.NET中,您可以选择哈希表作为用户设置的类型.但是,当我保存并以这种方式检索它时,它似乎根本没有保存它.
Hashtable t = new Hashtable();
t.Add(1,"Foo");
t.Add(2,"Bar");
Properties.Settings.Default.Setting = t;
Properties.Settings.Default.Save();
if(Properties.Settings.Default.Setting != null)
foreach (DictionaryEntry entry in Properties.Settings.Default.Setting)
{
MessageBox.Show(entry.Key + " " + entry.Value);
}
Run Code Online (Sandbox Code Playgroud)
当我在Visual Studio中清楚地选择该类型时,为什么它不会在用户设置中序列化它?我会理解,如果这是一个未列出的类型,如字典,但列出了Hashtable.我该如何解决这个问题?
这个顺序的简单性和效率对我来说是最重要的.
非常感谢,Kave
更新:
@Joao,非常感谢二元解决方案.我发现它很有趣,很干净.将其序列化为二进制文件的一个disadvavtage可能是您不能再手动更改usersetting文件中的任何内容.但我认为无论如何都会很少这样做,所以这是一个很好的解决方案.
我在考虑在用户范围内创建类型为字符串的"XMLSetting"字段的不同方法,并使用此代码将值存储和检索为序列化为哈希表的XMl文件.但我确信这不是最好的方法,有没有人知道在用户设置中将哈希表/字典序列化为xml的更好方法,除了我在下面做的事情?
if(string.IsNullOrEmpty(Properties.Settings.Default.XMLSetting))
{
Console.WriteLine("Usersettings is empty. Initializing XML file...");
XmlDocument doc = new XmlDocument();
XmlElement hashtable = doc.CreateElement("HashTable");
doc.AppendChild(hashtable);
GenerateValues(doc, hashtable, "1", "Foo");
GenerateValues(doc, hashtable, "2", "Bar");
Properties.Settings.Default.XMLSetting = doc.OuterXml;
Properties.Settings.Default.Save();
}
else
{
Console.WriteLine("Retrieving existing user settings...");
XmlDocument doc = new XmlDocument();
doc.LoadXml(Properties.Settings.Default.XMLSetting);
Hashtable hashtable …Run Code Online (Sandbox Code Playgroud) 我正在运行Mac OS X 10.5.8并希望使用GCC 4.1.2编译目标CentOS 5.3.我怎么能:
任何帮助是极大的赞赏!
我理解调用函数(1)而不是函数(1)(2),它是如何工作的?
功能(1)(2)(3)(4)也可以吗?
在我的一个MySQL表中,我有以下列:
Skills varchar(80)
Industry varchar(40)
Address varchar(100)
Run Code Online (Sandbox Code Playgroud)
技能可能包括以下文本:C/C++,MS Office,Linux等.行业可能包括以下文本: 财务,IT等.地址包含完整的邮政地址以及城市名称.没有单独的城市列.
在我的网页上,我有搜索框,用户可以在其中键入每个列的关键字.我使用SQL查询,如下所示:
Select studentname where skills like '%...%';
Run Code Online (Sandbox Code Playgroud)
我想改进搜索结果和性能.例如,用户可能已经输入了像Linex而不是Linux的技能.所以,我的搜索应该返回约.比赛.
请告诉我如何使搜索更准确并提高性能.目前,我已经定义的索引skills,address和industry列.但表现不太好.
表引擎是InnoDB.
编辑
问题是我们从各个机构收到预先填写的MS Excel表格.我们的.NET应用程序读取Excel工作表的列值并将其存储在远程数据库中.对于拆分表,我们需要更改我们的应用程序.
在生成的项目中,我收到了由未使用的导入和类似事件引起的100次警告.我可以批量清理所有文件的导入吗?
如果我有变量$num = 50,我怎么能将数字1-50放入数组?
我正在尝试使用标头发送信息,但我的html已经输出信息,我试图通过使用ob_start()函数来解决问题无济于事
ob_start();
require('RegisterPage.php');
if(isset($_POST['register']))
{
if(register($errormsg,$regnumber))
{
$to = $_POST['email'];
$subject = "Registration";
$txt = "You need to return to the Classic Records homepage and enter the number given in order to finish your registration ".$regnumber."";
$headers = "From: registration@greenwichtutoring.com";
mail($to,$subject,$txt,$headers);
header('Location:emailNotification.html');
}
else $error=$errormsg;
}
ob_end_flush();
Run Code Online (Sandbox Code Playgroud) 假设我有一个简单的符号:
> '+
+
Run Code Online (Sandbox Code Playgroud)
有什么方法可以将该符号应用为程序:
> ((do-something-with '+) 1 2)
3
Run Code Online (Sandbox Code Playgroud)
那么'+评估程序+?
我一直收到错误:
升迁向导不适用于您的访问项目所连接的此版本的SQL Server.
还有其他人看过这个问题.