📄 loadfile.java
字号:
import java.io.*;
import java.net.*;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
public class LoadFile extends HttpServlet {
public void doPost( HttpServletRequest request, HttpServletResponse response )
throws ServletException, IOException
{
HttpSession session = request.getSession();
String tempName=(String)session.getId();
File dir=new File("E:/work/UpLoadAndDownd","File");
if(!dir.exists())
{
dir.mkdir();
}
File fp=null;
int n;
FileOutputStream out=null;
InputStream in=request.getInputStream();
if(dir.exists())
{
fp=new File("E:/work/UpLoadAndDownd/File",tempName);
out=new FileOutputStream(fp);
byte b[]=new byte[1000];
while((n=in.read(b))!=-1)
{
out.write(b,0,n);
}
}
else
{
response.sendRedirect("error.jsp");
}
in.close();
out.close();
RandomAccessFile ranFile=new RandomAccessFile(fp,"r");
int getSecondLine=1;
String secondLine="";
String fileName="";
while(getSecondLine<=2)
{
secondLine=ranFile.readLine();
getSecondLine++;
System.out.println(secondLine);
}
int position=secondLine.lastIndexOf('\\');
fileName=secondLine.substring(position+1,secondLine.length()-1);
//System.out.println(fileName);
ranFile.seek(0);
long forthEndPosition=0;
int forth=1;
int nn=0;
while((nn=ranFile.readByte())!=-1&&(forth<=4))
{
if(nn=='\n')
{
forthEndPosition=ranFile.getFilePointer();
forth++;
}
}
byte cc[]=fileName.getBytes("ISO-8859-1");
fileName=new String(cc);
File f2=new File("E:/work/UpLoadAndDownd/File",fileName);
RandomAccessFile ranFile2=new RandomAccessFile(f2,"rw");
ranFile.seek(ranFile.length());
long endPosition=ranFile.getFilePointer();
//System.out.println("The Position 1 is:"+endPosition);
long temp=endPosition;
int j=1;
while(temp>=0&&j<=6)
{
temp--;
ranFile.seek(temp);
nn=ranFile.readByte();
if(nn=='\n')
{
endPosition=ranFile.getFilePointer();
j++;
}
}
//System.out.println("The Position 2 is:"+endPosition);
//System.out.println("The File End Position is:"+ranFile.length());
ranFile.seek(forthEndPosition);
long startPosition=ranFile.getFilePointer();
//System.out.println();
while(startPosition<endPosition)
{
//System.out.println("The Position 3 is:"+endPosition);
nn=ranFile.readByte();
ranFile2.write(nn);
startPosition=ranFile.getFilePointer();
}
ranFile.close();
ranFile2.close();
fp.delete();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -