C#字节数组不是由Java理解的

时间:2016-03-07 13:01:01

标签: java c# memcached

我正在使用memcache,用于在java和c#之间进行通信。 c#将数据以byte []格式放入memcache,并从java应用程序尝试读取该字节数组但在Java中获取String对象。 示例: - C#代码

MemcachedClient _mc = new MemcachedClient();
_mc.Serverlist = { "127.0.0.1:11211" }
byte[] stestValue = GetBytes("india");
m_c.set("key1",stestValue);

private byte[] GetBytes(string str)
{
    byte[] bytes = new byte[str.Length * sizeof(char)];
    System.Buffer.BlockCopy(str.ToCharArray(), 0, bytes, 0, bytes.Length);
    return bytes;
}

Java代码: - //获取我们在具有密钥的memcache中设置的数据: - Key1

MemcachedClient mcc = new MemcachedClient(new InetSocketAddress("127.0.0.1", 11211));

Object value = mcc.get("key1");

这里我们在Value而不是byte[]中获取字符串对象。

1 个答案:

答案 0 :(得分:0)

是的,我试图从中获取byte [],但是这个字节数组的长度与c#字节数组不同。我的要求是按字节长度解析字节数组,所以要求是 c#中byte []的长度= Java中byte []的长度