关于java socket 的问题

大侠们帮下忙,我是个新手,要编写客户端,服务端的通讯程序~~~想通过读取文件(如txt的文件)中的ip及port值,来进行通讯~~~这是我在书上找的源码,测试过没问题的,... 大侠们帮下忙,我是个新手,要编写客户端,服务端的通讯程序~~~想通过读取文件(如txt的文件)中的ip及port值,来进行通讯~~~这是我在书上找的源码,测试过没问题的,那请问读取文件,传递ip,port值得这一块,要怎么加进去?怎么实现?谢谢了,非常感谢

import java.net.*;
import java.io.*;
import java.lang.*;
public class ClientApp {
public static void main(String args[])
{
try
{
Socket cSocket=new Socket("221.204.17.247",8018);
//想这里通过读取文件获得IP,PORT的值,怎么实现?谢谢
OutputStream os=cSocket.getOutputStream();
DataInputStream is=new DataInputStream(cSocket.getInputStream());

int c;
boolean flag=true;

String responseline;

while(flag)
{
//从标准输入输出接受字符并且写如系统
while((c=System.in.read())!=-1)
{
os.write((byte)c);
if(c=='\n')
{
os.flush();
//将程序阻塞,直到回答信息被收到后将他们在标准输出上显示出来
responseline=is.readLine();
System.out.println("Message is:"+responseline);

}
}
}
os.close();
is.close();
cSocket.close();

}
catch(Exception e)
{
System.out.println("Exception :"+ e.getMessage());
}
}
}
展开
 我来答
百度网友7fc152d58
2009-10-11 · 超过12用户采纳过TA的回答
知道答主
回答量:48
采纳率:0%
帮助的人:39.3万
展开全部
不忍心..
1. 写个config.txt 内容如下:
ip = xxx.xxx.xxx.xxx
port = ####

2. 写如下代码获取ip和port
Properties prop = new Properties();
InputStream in = new FileInputStream("config.txt");// full path
prop.load(in);
in.close(); // catach exception
String ip = (String)prop.get("ip");
String portValue = (String)prop.get("port");

自己整理下.. Properties 在 java.util 包里面..
DHC_mission
2009-10-09
知道答主
回答量:13
采纳率:0%
帮助的人:0
展开全部
txt文件里本来就没什么格式,全是自己定义,我写了一个方法,给lz参考,已经跑通。
txt文件里的内容为:ip:10.10.151.157;port:8080
代码如下:
package itims.proto.wmi.wmiagent;
import java.io.*;

public class ClientApp {
static String ip = null;
static int port = 0;
public static void main(String[] args)
{
try {
FileReader is = new FileReader("E:\\socket.txt");
BufferedReader ios = new BufferedReader(is);
StringBuffer buf = new StringBuffer();
String str = ios.readLine();
while(str != null)
{
buf.append(str);
buf.append("\n");
str = ios.readLine();
}
String res = buf.toString();
String[] mm = res.split(";");
for(String mm1 : mm)
{
if(mm1.indexOf("ip:")!= -1)
{
ip = mm1.substring(mm1.indexOf(":")+1).trim();
}

if(mm1.indexOf("port:")!= -1)
{
port = Integer.parseInt(mm1.substring(mm1.indexOf(":")+1).trim());
}
}
System.out.println("ip:"+ip);
System.out.println("port:"+port);
} catch (IOException e) {
System.out.println(e.toString());
}
}
}

有具体的问题可以hi我
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
muqingren
2009-10-09
知道答主
回答量:21
采纳率:0%
帮助的人:3.7万
展开全部
楼上的很费心思
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
一只老菜鸟
2009-10-12 · 贡献了超过101个回答
知道答主
回答量:101
采纳率:0%
帮助的人:10.8万
展开全部
这里的配置大多用*.properties文件,这类配置文件是配对的,非常明了;
具体方法:
import java.util.ResourceBundle;
public class LoadConfig {

public static String load(String key) throws Exception
{
String ret = "";
if (init()!=null) ret = init().getString(key);
return ret;
}

public static ResourceBundle init() throws Exception
{
try
{
ResourceBundle bundle = ResourceBundle.getBundle("config");
//配置文件名config.properties(放在在src目录下)
return bundle;
}
catch(Exception e)
{
System.out.println("读 取 配 置 文 件 失 败 !\n");
return null;
}
}

}

调用方法:LoadConfig.load("IP")
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式