Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/tensorflow/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用方法的Sbyte[]与byte[]_C#_Web Services_Bytearray - Fatal编程技术网

C# 使用方法的Sbyte[]与byte[]

C# 使用方法的Sbyte[]与byte[],c#,web-services,bytearray,C#,Web Services,Bytearray,它是写的 byte[][] getImagesForFields(java.lang.String[] fieldnames) 获取给定字段的图像数组 另一方面,只要我在使用c#在asp.NET2.o上构建的web应用程序项目中使用该方法 上面声明的提供的web方法返回sbyte; 看看下面我的代码 formClearanceService.openSession(imageServiceUser); formClearanceService.prepareInstance(form

它是写的

byte[][] getImagesForFields(java.lang.String[] fieldnames) 
获取给定字段的图像数组

另一方面,只要我在使用c#在asp.NET2.o上构建的web应用程序项目中使用该方法

上面声明的提供的web方法返回sbyte; 看看下面我的代码

  formClearanceService.openSession(imageServiceUser);
  formClearanceService.prepareInstance(formId);
  byte[][] fieldImagesList = formClearanceService.getImagesForFields(fieldNames);
  formClearanceService.closeSession();
因此,我得到以下错误:无法将类型“sbyte[]”隐式转换为“byte[][]”

那么现在,, 1-我是否应该询问web服务提供商发生了什么? 或 2-可以使用sbyte的任何其他方式,如我假设的使用字节[],如下所示:
byte[]ssss=fieldImagesList[0]…

Java有带符号的字节,因此该部分在某些方面是正确的(尽管无符号字节更自然),但令人烦恼的是它返回的是单个数组而不是锯齿状数组。我想你需要比较一些数据,看看你收到了什么和你期望的是什么

但在有符号和无符号之间进行更改非常简单:

sbyte[] orig = ...
byte[] arr = Array.ConvertAll(orig, b => (byte)b);
或者(更快)简单地说:


谁提供了这个功能?看起来文档(假设第一个引号来自于此)和代码不同步。你需要问图书馆的作者它应该做什么。@Paolo这是一个文档。过了一会儿,我会问他们,除非我从stackoverflow得到答案。没错,web服务是基于java的,web应用程序端是使用c#在asp.net平台上构建的。
sbyte[] orig = ...
byte[] arr = new byte[orig.Length];
Buffer.BlockCopy(orig, 0, arr, 0, orig.Length);