我正在从串口读取数据.数据来自规模.我现在正在使用Readline()并在删除后删除数据DiscardInBuffer().从串口读取数据的正确方法是什么?网上的例子很少,我觉得这就像是一些没有人想到的圣杯.
有什么帮助吗?
好像串口是一个反复无常的孩子.
C#,WinCE 5.0,HP瘦客户端,Compact framework 2.0
private void WeighSample()
{
this._processingDone = false;
this._workerThread = new Thread(CaptureWeight);
this._workerThread.IsBackground = true;
this._workerThread.Start();
} //end of WeighSample()
private void CaptureWeight()
{
globalCounter++;
string value = "";
while (!this._processingDone)
{
try
{
value = this._sp.ReadLine();
if (value != "")
{
if (value == "ES")
{
_sp.DiscardInBuffer();
value = "";
}
else
{
this.Invoke(this.OnDataAcquiredEvent, new object[] { value });
}
}
}
catch (TimeoutException)
{
//catch it but do …Run Code Online (Sandbox Code Playgroud) 嘿伙计们,所以我遇到了一些可能是Extension方法.CopyToDataTable中的缺陷.
导入(在VB.NET中)System.Data.DataTableExtensions然后针对IEnumerable调用该方法使用此方法.如果要使用LINQ过滤数据表,然后在最后还原DataTable,则可以执行此操作.
即:
Imports System.Data.DataRowExtensions
Imports System.Data.DataTableExtensions
Public Class SomeClass
Private Shared Function GetData() As DataTable
Dim Data As DataTable
Data = LegacyADO.NETDBCall
Data = Data.AsEnumerable.Where(Function(dr) dr.Field(Of Integer)("SomeField") = 5).CopyToDataTable()
Return Data
End Function
End Class
Run Code Online (Sandbox Code Playgroud)
在上面的示例中,"WHERE"过滤可能不会返回任何结果.如果发生这种情况,CopyToDataTable会抛出异常,因为没有DataRows.
为什么?
正确的行为应该是返回一个Rows.Count = 0的DataTable.
任何人都可以想到一个干净的解决方法,以这种方式调用CopyToDataTable谁不必知道这个问题?
System.Data.DataTableExtensions是一个静态类,所以我无法覆盖行为....任何想法?我错过了什么吗?
干杯
更新:
我已将此问题提交给Connect.我仍然想要一些建议,但如果您同意我的意见,可以通过上面的链接在Connect上投票
干杯
将valueconverter与listbox一起使用的最简单方法是什么?
我在运行时将ItemSource设置为对象的List <>,它显示ToString()方法的文本字符串.但我想要的是通过值转换器传递对象以获得完全不同的字符串值.
我发现的所有示例都将大量绑定到xaml中的内容,定义样式和模板以重新设计整个框,但我只想将我的值转换为...
我有一个包含我的数据的Map,并希望用它构建一个查询字符串,就像我在PHP上使用http_build_query一样.我不确定这段代码是否是最好的实现,或者我忘记了什么?
public String toQueryString(Map<?, ?> data) throws UnsupportedEncodingException {
StringBuffer queryString = new StringBuffer();
for (Entry<?, ?> pair : data.entrySet()) {
queryString.append ( URLEncoder.encode ( (String) pair.getKey (), "UTF-8" ) + "=" );
queryString.append ( URLEncoder.encode ( (String) pair.getValue (), "UTF-8" ) + "&" );
}
if (queryString.length () > 0) {
queryString.deleteCharAt ( queryString.length () - 1 );
}
return queryString.toString ();
}
Run Code Online (Sandbox Code Playgroud) 如果您在MVC应用程序中使用Nhibernate进行数据访问,那么最好的缓存提供程序是什么,例如Syscache,Syscache2,Memcache,HashTable ..?
谢谢你的选择.
在PHP中,我想编码尚未编码的&符号.我想出了这个正则表达式
/&(?=[^a])/
Run Code Online (Sandbox Code Playgroud)
到目前为止它似乎运作良好,但看到我不是一个正则表达式专家,我问这个正则表达式是否有任何潜在的陷阱?
基本上它需要转换&为&但&保持&原样(以免得到&amp;)
谢谢
谢谢你的回答.看来我并没有想足够广泛地覆盖所有基地.这似乎是正则表达式本身的常见陷阱(必须考虑所有可能使你的正则表达式得到误报的可能性).它确实打败了我原来的str_replace(' & ', ' & ', $string); :)
有没有办法为VS2008设置外部编辑器集成?
我的意思是当我在解决方案资源管理器中双击.CPP文件时,它应该在外部编辑器中打开,而不是在内部VS中打开.
为了简单起见,我想要它在Notepad ++中打开文件(或者如何使记事本更简单).
在Xcode完成构建之后,有一种方法可以将可执行文件复制到特定目录
〜/网站/ cgi-bin目录/
我将目标Installation Directory设置为正确的文件夹,skip installation 未经检查,但没有运气.
有什么我想念的吗?
关于我之前关于算法书的持久属性的问题,请看这里,现在我想问一下社区你会用什么语言来编写这样一本参考书的例子.
我可能不会使用MMIX(!)来编写本书的示例,但与此同时,我认为伪代码不如真实语言中的示例有趣.
不过,我也希望这本书也成为研究人员的资源.什么可以是社区的选择?为什么?
答:我知道这是一个棘手的问题,并且会有几个不同的答案.请注意,答案涵盖了从Assembly/MMIX(!!)到Python和伪代码的整个范围.投票和争论迫使我选择Uri的明智答案,但有一点需要注意:我的伪代码将尽可能接近C(当然不会涉及平台特定问题),我可能会讨论更好的实现在旁注中(正如我们所有人都知道的那样,在数学上证明算法的工作原理远远不是实现它的问题).
这本书是关于特定领域的算法,而不是一般算法的数学(更聪明的人已经完成并且在一般算法上会做得比我好得多).因此,我认为有一件事会增加这样一本书的价值是算法的存储库,我肯定会把它放在一个配套的网站上(如果我找到时间,可能会用几种语言).
感谢所有的答案.我有时觉得我应该把所有回答的人都作为共同作者.:)