【问题标题】:Sending integer or string from java server从 java 服务器发送整数或字符串
【发布时间】:2011-08-20 04:28:14
【问题描述】:

我有一个 java 服务器,可以发送任何类型的文件,但我无法发送字符串或整数。

以下是文件发送方式的示例。

File f = new File("/Users/Large/Downloads/android.jpg");
FileInputStream fis = null;
int size = (int)f.length();
byte[] bytes = new byte[size];
fis = new FileInputStream( f );
fis.read( bytes );

System.out.println("entro...");
out.write( bytes );
out.flush();

【问题讨论】:

  • 到底是什么问题?
  • @drizzom:请发布与您尝试发送字符串或整数的问题相关的代码。我们感兴趣的是不起作用,而不是起作用 =)
  • 问题是我想让这个发送Srting或文本,我不知道,你能给我任何建议或想法吗。

标签: java android sockets inputstream


【解决方案1】:

尝试用这些使用StringByteBuffer 类的示例替换您对out.write(bytes) 的调用。:

// A string ("Hello, World").
out.write("Hello, World".getBytes());

// An integer (123).
out.write(ByteBuffer.allocate(4).putInt(123).array());

请注意,在某些时候,您需要关心endiannesscharacter encoding,以便在另一端以可靠的方式读取这些值。

【讨论】:

  • 如果我想发送一个字符串数组,你知道吗?再次感谢。
  • @drizzom:最好先提出一个关于如何编写字符串/整数数组的新问题,而不是把它放在这儿。
  • 我在这里发布问题是链接stackoverflow.com/questions/7127227/…
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-03-02
  • 2015-10-20
  • 2017-08-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-06-12
相关资源
最近更新 更多