Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Skicka byte array från C# app to Java app: Fel vid mottagning hos JAVA

Postades av 2006-05-02 19:23:51 - Ted Ekeroth, i forum c# (c-sharp), Tråden har 4 Kommentarer och lästs av 842 personer

Hej,
jag har en kort enkel byte[] som skickas från ett C# program och ska tas emot av ett JAVA-program. Det fungerar för data som inte är större än 1 byte, t ex:

byte[] firstSend = new byte[9];
firstSend[0] = 1;
firstSend[1] = 4; |
firstSend[2] = 0; | Int32 (4 bytes) där värdet är 4.
firstSend[3] = 0; |
firstSend[4] = 0; |

firstSend[5] = 0; |
firstSend[6] = 0; | Int32 (4 bytes) där värdet är 0
firstSend[7] = 0; |
firstSend[8] = 0; |

Denna array kommer tas emot fint och tolkas rätt på JAVA-sidan där jag tar ut:
byte type = firstSend[0];
int dataSize = enMetodSomTarUtIntUrEnArray(firstSend, 1);
byte data = ... yada yada (0 bytes)

Än så länga inga problem. Men om jag istället för att skicka in 4 tomma bytes ("data") så skickar jag in ett värde av 400 såhär:

byte[] firstSend = new byte[9];
firstSend[0] = 1;
firstSend[1] = 4; |
firstSend[2] = 0; | Int32 (4 bytes) där värdet är 4 (4 bytes data alltså)
firstSend[3] = 0; |
firstSend[4] = 0; |

firstSend[5] = 144 |
firstSend[6] = 1; | Int32 (4 bytes) där värdet är 400 (144 + 256 = 400)
firstSend[7] = 0; |
firstSend[8] = 0; |

När denna tas emot på JAVA sidan ser den ut såhär:

byte[] firstSend = new byte[9];
firstSend[0] = 1;
firstSend[1] = 4; |
firstSend[2] = 0; | Int32 (4 bytes) där värdet är 4 (4 bytes data alltså)
firstSend[3] = 0; |
firstSend[4] = 0; |

firstSend[5] = -112 |
firstSend[6] = 1; |
firstSend[7] = 0; |
firstSend[8] = 0; |

Jag har INGEN aning om varför. Ideér?



Svara

Sv: Skicka byte array från C# app to Java app: Fel vid mottagning hos JAVA

Postades av 2006-05-02 20:32:35 - David Andreasson

I java är en byte signed som default och eftersom 144 > 127 så får du ett negativt tal.


Svara

Sv:Skicka byte array från C# app to Java app: Fel vid mottagning hos JAVA

Postades av 2006-05-02 21:49:07 - Ted Ekeroth

Aha, tack för det! Ska undersöka =)


Svara

Sv: Skicka byte array från C# app to Java app: Fel vid mottagning hos JAVA

Postades av 2006-05-02 22:14:21 - Ted Ekeroth

Snacka om korkat: JAVA har ENDAST signed bytes, inte unsigned bytes!
Komplett vansinne får man ju säga... Det finns såklart extremt kladdiga omvägar... *suck*

LÄnge leve C# säger jag bara...


Svara

Sv:Skicka byte array från C# app to Java app: Fel vid mottagning hos JAVA

Postades av 2006-05-03 10:00:06 - Andreas Paulsson

Du kan läsa om hur man konverterar från byte[] (där de egentligen är unsigned byte) till integers här : http://www.petefreitag.com/item/183.cfm.

Jobbigt och stökigt, men det går relativt enkelt om man kapslar in det in en metode eller två.

/Andreas


Svara

Nyligen

  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo
  • 14:25 Tips på verktyg för att skapa QR-k
  • 14:23 Tips på verktyg för att skapa QR-k
  • 20:52 Fungerer innskuddsbonuser egentlig

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 569 167
27 952
271 704
790
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies