我有一个字节数组填充十六进制数字和打印它简单的方法是非常没有意义的,因为有许多不可打印的元素.我需要的是以下形式的确切十六进制代码:3a5f771c
我有一个Web服务器,它将大型二进制文件(几兆字节)读入字节数组.服务器可能同时读取多个文件(不同的页面请求),所以我正在寻找最优化的方法来做到这一点,而不会对CPU造成过多的负担.下面的代码是否足够好?
public byte[] FileToByteArray(string fileName)
{
byte[] buff = null;
FileStream fs = new FileStream(fileName,
FileMode.Open,
FileAccess.Read);
BinaryReader br = new BinaryReader(fs);
long numBytes = new FileInfo(fileName).Length;
buff = br.ReadBytes((int) numBytes);
return buff;
}
Run Code Online (Sandbox Code Playgroud) 有没有一种简单的方法或方法可以将其Stream
转换为byte[]
C#?
我有一个长十六进制字符串,表示一系列不同类型的值.我希望将此Hex字符串转换为字节数组,以便我可以将每个值移出并将其转换为适当的数据类型.
我的数据库表中有一个blob列,我必须byte[]
在我的Java程序中使用它作为映射并使用这些数据我必须将其转换为InputStream
或OutputStream
.但是当我这样做时,我不知道内部会发生什么.任何人都能简单地向我解释一下当我进行这种转换时会发生什么吗?
我想存储图像SQLite DataBase
.我试图用它来存储BLOB
和String
,在这两种情况下,它存储的图像,并可以获取,但是当我将其转换为Bitmap
使用
BitmapFactory.decodeByteArray(...)
它返回null.
我使用过这段代码,但它返回null
Bitmap bitmap = BitmapFactory.decodeByteArray(blob, 0, blob.length);
Run Code Online (Sandbox Code Playgroud) 这是以这种方式将ByteBuffer转换为String的正确方法,
String k = "abcd";
ByteBuffer b = ByteBuffer.wrap(k.getBytes());
String v = new String(b.array());
if(k.equals(v))
System.out.println("it worked");
else
System.out.println("did not work");
Run Code Online (Sandbox Code Playgroud)
我问的原因是这看起来太简单了,而其他方法如Java:将字符串转换为ByteBuffer以及相关问题看起来更复杂.
我正在制作远程桌面共享应用程序,我在其中捕获桌面图像并压缩它并将其发送到接收器.要压缩图像,我需要将其转换为byte [].
目前我正在使用这个:
public byte[] imageToByteArray(System.Drawing.Image imageIn)
{
MemoryStream ms = new MemoryStream();
imageIn.Save(ms,System.Drawing.Imaging.ImageFormat.Gif);
return ms.ToArray();
}
public Image byteArrayToImage(byte[] byteArrayIn)
{
MemoryStream ms = new MemoryStream(byteArrayIn);
Image returnImage = Image.FromStream(ms);
return returnImage;
}
Run Code Online (Sandbox Code Playgroud)
但我不喜欢它,因为我必须将它保存在ImageFormat中,并且还可能耗尽资源(慢速下降)以及产生不同的压缩结果.我已阅读使用Marshal.Copy和memcpy但我无法了解他们.
那么有没有其他方法来实现这一目标?
我不关心编码和东西,只要我找回完全相同的字节数组.
总结一下:如何将字节数组转换为字符串,然后将该字符串转换回我开始使用的相同字节数组?
bytearray ×10
c# ×4
java ×4
inputstream ×3
bitmap ×2
string ×2
.net ×1
android ×1
binary-data ×1
hex ×1
memory ×1
outputstream ×1
python ×1
sqlite ×1