2012-05-08 32 views
5

Ben MATLAB programlama için oldukça yeni ve bazı belaya girdi:MATLAB: Java String [] dönüşüm

Bir dSPACE MLIB libriary işlevi çağırmak istiyorum. Örneklerine göre, argüman olarak bir dizi dizisi gerektirir:

Bu değişkenler işleve iletilir. Sorunum şu an: Kullanıcının, matlab işlevine iletilmesi gereken dizelerin bir dizi numarasını seçebileceği bir önyükleme uygulamasına sahibim. Frontend Java'da writtten olduğundan, gelen verinin türü java.lang.String []. Bir java dizisi dizisini, yukarıdaki örnek değişkenle aynı türde bir şeye nasıl dönüştürebilirim (bunun bir hücre dizisi dizisi olduğunu düşünüyorum veya böyle bir şey var).

Şimdiden teşekkürler!

cevap

6

Belgelere bir bakın. MATLAB, Java türlerine ve Java türlerine dönüştürmeyi çok kolaylaştırır.

  • Handling data returned from Java
  • Dealing with Java arrays
  • Sen MATLAB'da ya bir hücre ya da karakter dizisi Java dizelerden oluşan bir dizi dönüştürebilirsiniz

      . Hücre dizilerini kullanmak, pürüzlü dizilerde bile (Java'da izin verilen) çalışabilir.

      %# Preparing a java.lang.String[] to play with. 
      a = javaArray('java.lang.String',10); 
      b = {'I','am','the','very','model','of','a','modern','major','general'}; 
      for i=1:10; a(i) = java.lang.String(b{i}); end; 
      
      %# To cell array of strings. Simple, eh? 
      c = cell(a); 
      
      %# To char array. Also simple. 
      c = char(a); 
      
    +0

    Hm Ben basit ... Ben 4 dönüşüm adımlarına kadar karıştığı çeşitli yaklaşımlar çalıştı olmasını beklemiyorduk:

    Burada iki basit örnekleridir. Kodunuzu mümkün olan en kısa sürede deneyeceğim. – Oromis