Tag: 字节

修改数组后,将字节数组转换为c#中的Image

我正在尝试将字节[]转换为C#中的图像。 我知道这个问题已经在不同的论坛上提出过。 但是他们给出的答案都没有帮助我。 给出一些上下文=我打开一个图像,将其转换为byte []。 我加密字节[]。 最后我仍然有字节[]但它已被修改为ofc。 现在我想再次显示它。 byte []本身由6559个字节组成。 我尝试通过以下方式转换它: public Image byteArrayToImage(byte[] byteArrayIn) { MemoryStream ms = new MemoryStream(byteArrayIn); Image returnImage = Image.FromStream(ms); return returnImage; } 我收到此错误:参数无效。 通过在List上使用.toArray()构造字节数组 List encryptedText = new List(); pbEncrypted.Image = iConverter.byteArrayToImage(encryptedText.ToArray()) ; 谁能帮我? 我忘记了某种格式或什么? 必须转换为图像的字节: private void executeAlgoritm(byte[] plainText) { // Empty list of bytes List encryptedText = […]

字节数组中的字符串不会在C#中被修剪?

我有一个类似于此的字节数组(16字节): 71 77 65 72 74 79 00 00 00 00 00 00 00 00 00 00 我用它来将它转换为字符串并修剪结束空格: ASCIIEncoding.ASCII.GetString(data).Trim(); 我得到的字符串很好,但它仍然有所有结束空格。 所以我得到类似”qwerty……….”东西(其中点是StackOverflow的空格)。 我究竟做错了什么? 我也尝试使用.TrimEnd()并使用UTF8编码,但它不会改变任何东西。 提前致谢 :)

如何使用C#的三元运算符和两个字节值?

似乎没有办法在两个字节上使用C#的三元运算符,如下所示: byte someByte = someBoolean ? 0 : 1; 该代码目前无法使用“无法将源类型’int’转换为目标类型’byte’”进行编译,因为编译器将数字视为整数。 显然没有指定的后缀表示0和1是字节,因此唯一的解决方法是(a)将结果转换为字节或(b)使用if-else控件。 有什么想法吗?

将String 转换为byte 数组

我正在尝试将此字符串数组转换为字节数组。 string[] _str= { “01”, “02”, “03”, “FF”}; to byte[] _Byte = { 0x1, 0x2, 0x3, 0xFF}; 我尝试了以下代码,但它不起作用。 _Byte = Array.ConvertAll(_str, Byte.Parse); 而且,如果我可以将以下代码直接转换为字节数组会更好: string s = “00 02 03 FF” to byte[] _Byte = { 0x1, 0x2, 0x3, 0xFF};

字节的最大长度?

我正在尝试创建一个byte数组,其长度为UInt32.MaxValue 。 这个数组本质上是一个小的(ish)内存数据库: byte[] countryCodes = new byte[UInt32.MaxValue]; 但是,在我的机器上,在运行时,我得到一个System.OverflowException其中“算术运算导致溢出”。 这是怎么回事? 我是否需要使用unsafe块和malloc ? 我如何在C#中做到这一点?

如何在C#中从byte 创建bmp文件

我在TCP Client中收到一个byte []数组。该数组包含一个24位RGB位图文件。如何创建具有给定宽度,高度和数据的位图文件? 在C ++中我使用它 int WriteBitmapFile(const char *filename, int width, int height, unsigned char *imageData) { FILE *filePtr; // file pointer BITMAPFILEHEADER bitmapFileHeader; // bitmap file header BITMAPINFOHEADER bitmapInfoHeader; // bitmap info header DWORD imageIdx; // used for swapping RGB->BGR unsigned char tempRGB; // used for swapping // open file for writing binary mode […]

C#替换Byte 中的字节

替换字节数组中某些字节的最佳方法是什么? 例如,我有bytesFromServer = listener.Receive(ref groupEP); 我可以做BitConverter.ToString(bytesFromServer)将其转换为可读格式,以返回沿着 48 65 6c 6c 6f 20 74 68 65 72 65 20 68 65 6c 70 66 75 6c 20 70 65 6f 70 6c 65 我想将“68 65 6c”中的内容替换成类似“68 00 00”的内容(仅作为示例)。 字节[]上没有.Replace()。 是否有一种简单的方法将其转换回字节[]? 任何帮助赞赏。 谢谢!

为什么C#的二元运算符总是返回int而不管它们的输入格式如何?

如果我有两个byte s a和b ,为什么会: byte c = a & b; 关于将字节转换为int会产生编译错误吗? 即使我在a和b前面放置了一个显式的强制转换, a也b 。 另外,我知道这个问题 ,但我真的不知道它是如何应用的。 这似乎是operator &(byte operand, byte operand2)的返回类型的问题,编译器应该能够像任何其他运算符一样进行排序。

c#字符串为hex,hex到字节转换

我有一个方法,它采用hex值并将其指定为明文,但类型的字节类型 byte plainText = 0xd7; 我想从文本框中获取此值,例如,用户将d7键入文本框,ı将分配给它 byte plaintText = 0xd7 我无法实现这一点。

在C#中将2个字节转换为Short

我正在尝试将两个字节转换为无符号短路,以便我可以检索实际的服务器端口值。 我基于回复格式从协议规范开始 。 我尝试使用BitConverter.ToUint16() ,但问题是,它似乎没有抛出预期的值。 请参阅下面的示例实现: int bytesRead = 0; while (bytesRead < ms.Length) { int first = ms.ReadByte() & 0xFF; int second = ms.ReadByte() & 0xFF; int third = ms.ReadByte() & 0xFF; int fourth = ms.ReadByte() & 0xFF; int port1 = ms.ReadByte(); int port2 = ms.ReadByte(); int actualPort = BitConverter.ToUInt16(new byte[2] {(byte)port1 , (byte)port2 […]