OSDN Git Service

とりあえず、軽くシャッターを切るところまで。
[gokigen/FujiCam.git] / app / src / main / java / net / osdn / gokigen / cameratest / fuji / ReceivedData.java
index 48eeaa4..a548b17 100644 (file)
@@ -1,5 +1,8 @@
 package net.osdn.gokigen.cameratest.fuji;
 
+import java.nio.ByteBuffer;
+import java.nio.CharBuffer;
+import java.nio.charset.Charset;
 import java.util.Arrays;
 
 class ReceivedData
@@ -12,8 +15,23 @@ class ReceivedData
         this.data = Arrays.copyOfRange(data, 0, length);
     }
 
+    ReceivedData(char[] data, int length)
+    {
+        byte[] convertedData = toBytes(data);
+        this.data = Arrays.copyOfRange(convertedData, 0, length);
+    }
+
     byte[] getData()
     {
         return (data);
     }
+
+    private byte[] toBytes(char[] chars)
+    {
+        CharBuffer charBuffer = CharBuffer.wrap(chars);
+        ByteBuffer byteBuffer = Charset.forName("UTF-8").encode(charBuffer);
+        byte[] bytes = Arrays.copyOfRange(byteBuffer.array(), byteBuffer.position(), byteBuffer.limit());
+        Arrays.fill(byteBuffer.array(), (byte) 0);
+        return (bytes);
+    }
 }