草庐IT

double-byte

全部标签

c# - 将文件转换为 byte[] 的可靠方法

我在网上找到了如下代码:privatebyte[]StreamFile(stringfilename){FileStreamfs=newFileStream(filename,FileMode.Open,FileAccess.Read);//Createabytearrayoffilestreamlengthbyte[]ImageData=newbyte[fs.Length];//Readblockofbytesfromstreamintothebytearrayfs.Read(ImageData,0,System.Convert.ToInt32(fs.Length));//Close

c# - Double.TryParse 或 Convert.ToDouble - 哪个更快更安全?

我的应用程序使用VSTO读取Excel文件并将读取的数据添加到StringDictionary.它仅添加具有几位数字的数据(10001000,21000,34-逗号在俄罗斯标准中是分隔符)。有什么方法可以更好地检查当前字符串是否为合适的数字?objectdata,stringkey;//datahadreadtry{Convert.ToDouble(regionData,CultureInfo.CurrentCulture);dic.Add(key,regionData.ToString());}catch(InvalidCastException){//isnotanumber}或d

c# - 将 System.Double 与 '0'(数字,整数?)进行比较的正确方法

我有这个if表达式,voidFoo(){System.Doublesomething=GetSomething();if(something==0)//Comparisonoffloatingpointnumberswithequality//operator.Possiblelossofprecisionwhileroundingvalue{}}那个表达式是否等于voidFoo(){System.Doublesomething=GetSomething();if(something?因为那时我可能会遇到问题,例如输入if值为0.9。 最佳答案

c# - WPF ListView : Attaching a double-click (on an item) event

我有以下ListView:我如何将事件附加到每个绑定(bind)的项目,双击该项目时将触发该事件? 最佳答案 从这里找到解决方案:http://social.msdn.microsoft.com/Forums/en-US/wpf/thread/3d0eaa54-09a9-4c51-8677-8e90577e7bac/XAML:C#:protectedvoidHandleDoubleClick(objectsender,MouseButtonEventArgse){vartrack=((ListViewItem)sender).Con

c# - 为什么 double.NaN 不等于它自己?

有人能给我解释一下吗?在C#中,double.NaN不等于double.NaNboolhuh=double.NaN==double.NaN;//huh=falseboolhuh2=double.NaN>=0;//huh2=falseboolhuh3=double.NaN我可以将什么常量与double.NaN进行比较并得到true? 最佳答案 如果你很好奇,这就是Double.IsNaN的样子:publicstaticboolIsNaN(doubled){return(d!=d);}时髦吧?

c# - 在 C# 中将 double 转换为 int

在我们的代码中,我们有一个需要转换为int的double。doublescore=8.6;inti1=Convert.ToInt32(score);inti2=(int)score;谁能解释一下为什么i1!=i2?我得到的结果是:i1=9和i2=8。 最佳答案 因为Convert.ToInt32回合:ReturnValue:roundedtothenearest32-bitsignedinteger.Ifvalueishalfwaybetweentwowholenumbers,theevennumberisreturned;that

c# - 如何从 C# 中的 byte[] 获取 IntPtr

我想在C#中将byte[]传递给采用IntPtr参数的方法,这可能吗?如何实现? 最佳答案 另一种方式,GCHandlepinnedArray=GCHandle.Alloc(byteArray,GCHandleType.Pinned);IntPtrpointer=pinnedArray.AddrOfPinnedObject();//Doyourstuff...pinnedArray.Free(); 关于c#-如何从C#中的byte[]获取IntPtr,我们在StackOverflow上找

c# - 将任何对象转换为 byte[]

我正在编写一个原型(prototype)TCP连接,但在对要发送的数据进行均质化时遇到了一些问题。目前,我只发送字符串,但将来我们希望能够发送任何对象。目前代码非常简单,因为我认为所有内容都可以转换为字节数组:voidSendData(objectheaderObject,objectbodyObject){byte[]header=(byte[])headerObject;//stringsatruntime,byte[]body=(byte[])bodyObject;//invalidcastexception//Unabletocastobjectoftype'System.St

c# - Double 的 "=="运算符的定义

出于某种原因,我潜入了Double类的.NETFramework源代码中并发现==的声明是:publicstaticbooloperator==(Doubleleft,Doubleright){returnleft==right;}相同的逻辑适用于每个运算符。这样的定义有什么意义?它是如何运作的?为什么它不创建无限递归? 最佳答案 实际上,编译器会将==运算符变成ceqIL代码,而不会调用您提到的运算符。源代码中运算符的原因可能是可以从C#以外的语言调用它,这些语言不会直接(或通过反射)将其转换为CEQ调用。运算符内的代码将编译为C

c# - 将 double 转换为整数

将double转换为int的最佳方法是什么?是否应该使用强制转换? 最佳答案 如果你想要默认的截断到零行为,你可以使用强制转换。或者,您可能想使用Math.Ceiling、Math.Round、Math.Floor等-虽然之后您仍然需要进行转换.不要忘记int的范围比double的范围小得多。如果值在未检查的上下文中超出int的范围,则从double到int的转换不会抛出异常,而调用Convert.ToInt32(double)将。如果值超出范围,则强制转换的结果(在未经检查的上下文中)显式未定义。