Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用ck上传图像_Java_Jsp_Ckeditor_Image Uploading - Fatal编程技术网

Java 使用ck上传图像

Java 使用ck上传图像,java,jsp,ckeditor,image-uploading,Java,Jsp,Ckeditor,Image Uploading,我需要上传一个图像到服务器使用发送到服务器按钮在ck编辑器和显示在ckeditor编辑区的图像。我在ckeditor中做了以下所有事情 url:b.config.filebrowserImageBrowseLinkUrl在image.js中紧跟此代码,i set hidden=false;及 CKEDITOR.editorConfig = function( config ) { config.filebrowserUploadUrl = '../ckeditorImage.jsp';

我需要上传一个图像到服务器使用发送到服务器按钮在ck编辑器和显示在ckeditor编辑区的图像。我在ckeditor中做了以下所有事情

url:b.config.filebrowserImageBrowseLinkUrl在image.js中紧跟此代码,i set hidden=false;及

CKEDITOR.editorConfig = function( config )
{
    config.filebrowserUploadUrl = '../ckeditorImage.jsp';
}

ckeditorImage.jsp is like this


try{

    String boundary="";
    String sz="";
    String fname="",sem="",sub="",mod="",empid="";
    Enumeration enum1 = request.getHeaderNames();
    while(enum1.hasMoreElements())
    {
            String header = (String)enum1.nextElement();
            String hvalue = request.getHeader(header);
            if("content-length".equalsIgnoreCase(header) )
        sz=""+hvalue;

    } 
        ServletInputStream sv=request.getInputStream();       
    int ch=0;
    String val="";  
    while((ch=sv.read())!=-1)
    {
        val+=(char)ch;      
                if(val.indexOf("Content-Type: ")>=0)
        {

            String tp="Content-Type: ";

            fname=val.substring(val.indexOf("filename=")+"filename=".length(),val.indexOf(tp));
                        fname=fname.replace('"',' ');
                        System.out.println(" =======fname============    :"+fname);           
            fname="home1.jpg";                  
            long size = fname.length();         

                        while((ch=sv.read())!='\n');
            byte[] b=new byte[Integer.parseInt(sz)];
            int cntr=0;
            while(cntr<b.length)
            {
                b[cntr]=(byte)sv.read();
                cntr++;
            }
                        String str=new String(b);
            int pos=str.indexOf(boundary)-2;
            pos=b.length;
            System.out.println(" =======fname============    :"+fname);  
                         File f=new File(config.getServletContext().getRealPath("/")+"/images/"+fname);
                         System.out.println(" creation of directory"+config.getServletContext().getRealPath("/")+"/images/"+fname);
                         System.out.println(" creation");
                       /*  if(f.isDirectory())
                         {
                             String fl[]=f.list();

                             for(int i=0;i<fl.length;i++)
                                 {
                                  File fd=new File(config.getServletContext().getRealPath("/")+"/users/"+sd+"/photos/"+fl[i]);
                                  fd.delete();
                             }
                         }*/
            if(!f.exists())
                f.mkdirs();
                         System.out.println(" creation of directory");
            java.io.FileOutputStream fout=new java.io.FileOutputStream(config.getServletContext().getRealPath("/")+"/images/"+fname);

            fout.write(b,2,pos-4);
            System.out.println(" creation of directory"+fout);
            fout.close();
        }
    }
    }
    catch(Exception e)
    {
        out.println(e);
    }
CKEDITOR.editorConfig=函数(配置)
{
config.filebrowserUploadUrl='../ckeditorImage.jsp';
}
ckeditorImage.jsp是这样的
试一试{
字符串边界=”;
字符串sz=“”;
字符串fname=“”,sem=“”,sub=“”,mod=“”,empid=“”;
枚举enum1=request.getHeaderNames();
while(enum1.hasMoreElements())
{
字符串头=(字符串)enum1.nextElement();
字符串hvalue=request.getHeader(header);
if(“内容长度”。相等信号案例(标题))
sz=”“+hvalue;
} 
ServletInputStream sv=request.getInputStream();
int ch=0;
字符串val=”“;
而((ch=sv.read())!=-1)
{
val+=(char)ch;
if(val.indexOf(“内容类型:”)>=0)
{
String tp=“内容类型:”;
fname=val.substring(val.indexOf(“filename=”)+“filename=”.length(),val.indexOf(tp));
fname=fname.replace(“,”);
System.out.println(“=====================================:”+fname);
fname=“home1.jpg”;
长尺寸=fname.length();
而((ch=sv.read())!='\n');
byte[]b=新字节[Integer.parseInt(sz)];
int-cntr=0;

而(cntr这个项目还提供了一个CKEditor的文件浏览器

如果您只需要上传部分,请查看servlet代码