等效于Java的
回答
我的Perl是很生疏,但看着man perlfunc
后,我觉得这可能是你想要什么:
List<Integer> items = ...;
ByteArrayOutputStream baos = new ByteArrayOutputStream();
DataOutputStream stream = new DataOutputStream(baos);
stream.write(items.size());
for (Integer item : items) {
stream.writeInt(item);
}
stream.flush(); // not sure this is strictly necessary
byte[] result = baos.toByteArray();
1)我很好奇为什么stream.writeInt )工作,而不是stream.wrtiteLong()。那是因为Java Int被解释为无符号long?如果是这样,Java Long解释为什么? 2)baos.toString()是我需要的,谢谢。 – syker 2014-10-10 22:07:35
Java中的long是64位,int是32位。签名与无签名无关紧要,因为它不会改变表示形式。 'baos.toString()'使用默认的平台编码。你可能想明确指定一个编码,例如'baos.toString(“UTF-8”)'。 – 2014-10-10 22:11:58
stream.write()写入1个字节还是4个字节?根据Javadoc [1],它看起来是1个字节。 [1] http://docs.oracle.com/javase/7/docs/api/java/io/DataOutputStream.html#write(int) – syker 2014-10-15 19:15:49
- 1. Exceldna等效于Java
- 2. Yacc等效于Java
- 3. 等效于Java中的memcmp()?
- 4. C#Uri.EscapeDatastring()等效于Java
- 5. Java SHA1等效于C#
- 6. jdeps等效于Java 7
- 7. opencv cvCaptureFromFile(“url”)等效于java?
- 8. 等效于JavaScript的Java的的getBytes的
- 9. 等效于Java的JFileChooser.FILES_AND_DIRECTORIES的WinForms
- 10. 用于Java Streams API的Javascript等效
- 11. BufferedReader.readNext()用于Java中ObjectInputStream的等效
- 12. 等效于Java ScheduledExecutorService的C语言库?
- 13. 等效于来自PHP中的Java
- 14. 用于Java的GNU Readline等效项
- 15. 用于Android的AJAX等效Java
- 16. 甲骨文等效于java的System.nanoTime()
- 17. Python中的“事件”等效于Java?
- 18. JavaScript等效于Java的URLEncoder.encode(“String”,“UTF-8”)
- 19. Swift等效于Java中的Enum.ordinal()
- 20. 等效于OpenSSL的
- 21. Worklow Foundation(.NET)等效于Python,Java,C++吗?
- 22. Java RMI InitialContext:等效于LocateRegistry.createRegistry(int)?
- 23. 目标C等效于intern()in java
- 24. 等效于WM_MOVE
- 25. php checkdnsrr java等效
- 26. Java`json_decode`(PHP)等效
- 27. Java中的freopen的等效
- 28. 的Java的mkdir -p等效
- 29. Tiff等效于UIImage.AsPNG()
- 30. IsNan等效于C
我不知道任何的Perl。如果我知道该代码在做什么,我可能会提供帮助。 – csmckelvey 2014-10-10 21:28:21
我检查了DatatypeConverter的API,但我没有看到如何以“网络”(big-endian)顺序将我的列表打包成无符号长整型(32位)。 – syker 2014-10-10 21:31:16
@skyer你可以使用java的nio输出使用ByteBuffer.allocate(size).order(endianness).asIntBuffer()来设置一个IntBuffer,并且以你需要的方式创建一个EndBuffer – 2014-10-10 22:20:38