关于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());
}
}
} 展开
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());
}
}
} 展开
展开全部
不忍心..
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 包里面..
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 包里面..
展开全部
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我
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我
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这里的配置大多用*.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")
具体方法:
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")
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询