📄 response.java
字号:
}
finally{
if(fos!=null)fos.close();//关闭文件输出流
}
}
catch(Exception e)
{
System.out.println(e.toString() );
}
if(!zz)//邮件转发
{
Socket socket11=null;
InputStream input11=null;
OutputStream output11=null;
FileInputStream fin=null;//文件输入流
byte byte22[]=new byte[1024];
int u;
int j;
File file1;
StringBuffer requestBuffer=new StringBuffer(1024);
StringBuffer requestBuffer1=new StringBuffer(1024);
StringBuffer requestBuffer2=new StringBuffer(1024);
StringBuffer requestBuffer3=new StringBuffer(1024);
StringBuffer requestBuffer4=new StringBuffer(1024);
StringBuffer requestBuffer5=new StringBuffer(1024);
try
{
try
{
socket11=new Socket("192.168.4.124",50);//连接下一个服务器
input11=socket11.getInputStream();
output11=socket11.getOutputStream();
try //读取返回信息
{
u=input11.read(byte22);
}
catch(IOException www)
{
www.printStackTrace();
u=-1;
}
for( j=0;j<u;j++)
{
requestBuffer.append((char) byte22[j]);
}
System.out.println(requestBuffer.toString());
String string11="helo MYSMTP";//发送helo命令
System.out.println(string11);
output11.write(string11.getBytes(),0,string11.length());
try //读取返回信息
{
u=input11.read(byte22);
}
catch(IOException www)
{
www.printStackTrace();
u=-1;
}
for(j=0;j<u;j++)
{
requestBuffer1.append((char) byte22[j]);
}
System.out.println(requestBuffer1.toString());
string11="mail from:<"+request.getRevrsePath()+">";//发送mail命令
System.out.println(string11);
output11.write(string11.getBytes(),0,string11.length());
try //读取返回信息
{
u=input11.read(byte22);
}
catch(IOException www)
{
www.printStackTrace();
u=-1;
}
for( j=0;j<u;j++)
{
requestBuffer2.append((char) byte22[j]);
}
System.out.println(requestBuffer2.toString());
string11="rcpt to:<"+request.getForwordPath()+">";//发送rcpt命令
System.out.println(string11);
output11.write(string11.getBytes(),0,string11.length());
try //读取返回信息
{
u=input11.read(byte22);
}
catch(IOException www)
{
www.printStackTrace();
u=-1;
}
for( j=0;j<u;j++)
{
requestBuffer3.append((char) byte22[j]);
}
String re=requestBuffer3.toString().trim();
System.out.println(re);
if(re.equals("250 OK"))//如果该用户在列表中则转发邮件
{
string11="data";//发送data命令
System.out.println(string11);
output11.write(string11.getBytes(),0,string11.length());
File qq1=new File(SmtpServer.rootDir,request.getUser());
if(!qq1.exists())qq1.mkdir();
if(x>0)
{
file1=new File(qq1,request.getRevrsePath()+
String.valueOf(x)+".txt");
}
else
{
file1=new File(qq1,request.getRevrsePath()+String.valueOf(0)+".txt");
}
fin=new FileInputStream(file1);
byte[] buffer11=new byte[1024];
int m=fin.read(buffer11,0,1024);//将邮件发送过去
while(m!=-1)
{
output11.write(buffer11,0,m);
m=fin.read(buffer11,0,1024);
}
string11="\r\n.\r\n";
output11.write(string11.getBytes(),0,string11.length());
try //读取返回信息
{
u=input11.read(byte22);
}
catch(IOException www)
{
www.printStackTrace();
u=-1;
}
for( j=0;j<u;j++)
{
requestBuffer4.append((char) byte22[j]);
}
System.out.println(requestBuffer4.toString());
}
else
{
File qq1=new File(SmtpServer.rootDir,request.getUser());
if(!qq1.exists())qq1.mkdir();
if(x>0)
{
file1=new File(qq1,request.getRevrsePath()+
String.valueOf(x)+".txt");
}
else
{
file1=new File(qq1,request.getRevrsePath()+String.valueOf(0)+".txt");
}
file1.delete();
qq1.delete();
}
string11="quit";//发送quit命令,断开连接
output11.write(string11.getBytes(),0,string11.length());
}
catch(Exception e)
{
System.out.println("connect error");
}
}
catch(Exception e)
{
}
}
}
public boolean isEnd(byte[] bytes,int size)//判断邮件是否结束
{
if(size==3)
{
if(bytes[0]=='.'&&bytes[1]==13&&bytes[0]==10)
{
System.out.println("end");
return true;
}
}
if(size>=5)
{
if(bytes[size-5]==13&&bytes[size-4]==10&&bytes[size-3]=='.'&&bytes[size-2]==13&&bytes[size-1]==10)
{
System.out.println("end");
return true;
}
}
return false;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -