草庐IT

byte-buddy

全部标签

c# - 使用 byte[] 作为字典中的键

我需要使用byte[]作为Dictionary中的键。由于byte[]不会覆盖默认的GetHashCode方法,因此包含相同数据的两个单独的byte[]对象将使用两个单独的槽在字典里。基本上我想要的是:Dictionarydict=newDictionary();dict[newbyte[]{1,2,3}]="mystring";stringstr=dict[newbyte[]{1,2,3}];//I'dlikestrtobesetto"mystring"atthispoint有没有简单的方法来做到这一点?我唯一能想到的是构建一个只包含byte[]的包装类,并根据byte[]的内容覆盖

c# - 如何将 float 组转换为 byte[] 并返回?

我有一个Floats数组,需要将其转换为字节数组并返回到float[]...谁能帮我正确地做到这一点?我正在使用bitConverter类,发现自己无法尝试附加结果。我这样做的原因是我可以将运行时值保存到IO流中。如果重要的话,目标存储是Azure页面blob。我不关心它存储在什么字节序中,只要它的输入与输出相匹配即可。staticbyte[]ConvertFloatToByteArray(float[]floats){byte[]ret=newbyte[floats.Length*4];//asinglefloatis4bytes/32bitsfor(inti=0;i

c# - 为什么 C# 中的字节与其他整数类型不同,命名为 byte 和 sbyte?

刚刚翻了一下规范,发现byte是奇数。其他的有short、ushort、int、uint、long和ulong。为什么这里命名为sbyte和byte而不是byte和ubyte? 最佳答案 这是一个语义问题。当您想到一个字节时,您通常(至少我是这样)想到0-255之间的8位值。这就是byte的含义。二进制数据不太常见的解释是-128到127的带符号值(sbyte)。对于整数,根据带符号的值来思考更直观,所以这就是基本名称样式所代表的。u前缀允许访问不太常见的无符号语义。 关于c#-为什么C

c# - 在 C# 中将 int[] 转换为 byte[]

从长远来看,我知道如何做到这一点:通过创建一个必要大小的字节数组并使用for循环从int数组中转换每个元素。我想知道是否有更快的方法,因为如果int大于sbyte,上面的方法似乎会中断。 最佳答案 如果您想要按位复制,即从一个int中获取4个字节,则使用Buffer.BlockCopy:byte[]result=newbyte[intArray.Length*sizeof(int)];Buffer.BlockCopy(intArray,0,result,0,result.Length);不要使用Array.Copy,因为它会尝试转换

c# - 从 C# 将 byte[] 保存到 SQL Server 数据库中

如何将byte[]数组保存到SQLServer数据库中?这个byte[]包含一个HashAlgorithm值。再次需要数据以备后用。所以转换它而不是让它恢复到原来的状态,这不是我想要的。提前致谢! 最佳答案 你应该可以这样写:stringqueryStmt="INSERTINTOdbo.YourTable(Content)VALUES(@Content)";using(SqlConnection_con=newSqlConnection(--your-connection-string-here--))using(SqlComman

c# - 从 byte[] 创建 zip 文件

我正在尝试通过一系列字节数组在.NET4.5(System.IO.Compression)中创建一个Zip文件。例如,从我正在使用的API中,我最终得到一个List每个Attachment有一个名为Body的属性这是byte[].我如何遍历该列表并创建一个包含每个附件的zip文件?现在我的印象是我必须将每个附件写入磁盘并从中创建zip文件。//ThisisgreatifIhadthefilesondiskZipFile.CreateFromDirectory(startPath,zipPath);//HowcanIcreateitfromaseriesofbytearrays?

c# - 将 byte[] 转换为 char[]

如何在C#中将byte数组转换为char数组? 最佳答案 System.Text.Encoding.ChooseYourEncoding.GetString(bytes).ToCharArray();替换上面的正确编码:例如System.Text.Encoding.UTF8.GetString(bytes).ToCharArray(); 关于c#-将byte[]转换为char[],我们在StackOverflow上找到一个类似的问题: https://stac

c# - 在 C#/.NET 中,为什么 sbyte[] 与 byte[] 相同,只是它不是?

我刚刚在C#/.NET中观察到一个奇怪的现象。我创建了这个最小示例来演示:if(newsbyte[5]isbyte[]){thrownewApplicationException("Impossible!");}objecto=newsbyte[5];if(oisbyte[]){thrownewApplicationException("Why???");}这将抛出“为什么???”,但不会抛出“不可能!”。它适用于所有相同大小的整数类型数组。谁可以给我解释一下这个?我很困惑。顺便说一下,我正在使用.NET4。P.S.:我知道我可以通过使用o.GetType()==typeof(byte

C# 4.0 : Convert pdf to byte[] and vice versa

如何将pdf文件转换为byte[],反之亦然? 最佳答案 //loadingbytesfromafileisveryeasyinC#.ThebuiltinSystem.IO.File.ReadAll*methodstakecareofmakingsureeverybyteisreadproperly.//notethatforLinux,youwillnotneedthec:part//justswapouttheexamplefolderherewithyouractualfullfilepathstringpdfFilePath

c# - byte[] 数组模式搜索

任何人都知道在byte[]数组中搜索/匹配字节模式然后返回位置的好而有效的方法。例如byte[]pattern=newbyte[]{12,3,5,76,8,0,6,125};byte[]toBeSearched=newbyte[]{23,36,43,76,125,56,34,234,12,3,5,76,8,0,6,125,234,56,211,122,22,4,7,89,76,64,12,3,5,76,8,0,6,125} 最佳答案 我可以建议一些不涉及创建字符串、复制数组或不安全代码的东西吗:usingSystem;usingSy