⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 localizefile.java

📁 野蔷薇论坛源码 java 自己看看吧。 学习用
💻 JAVA
字号:
/* 
 * Created on 2007-6-2
 * Last modified on 2007-6-2
 * Powered by GamVan.com
 */
package com.yeqiangwei.club.util;

import java.util.List;

import org.apache.log4j.Logger;

import com.yeqiangwei.club.service.ServiceLocator;
import com.yeqiangwei.club.service.ServiceWrapper;
import com.yeqiangwei.club.service.util.BasicInfoService;
import com.yeqiangwei.image.ImageFactory;
import com.yeqiangwei.image.ImageOperate;
import com.yeqiangwei.io.File;
import com.yeqiangwei.net.UrlFile;
import com.yeqiangwei.util.FormatDateTime;
import com.yeqiangwei.util.StringHelper;
import com.yeqiangwei.util.Validator;

public class LocalizeFile {
	
	private static final Logger logger = Logger.getLogger(LocalizeFile.class);
	
	public static BasicInfoService getBasicInfoService() {
		return ServiceWrapper.<BasicInfoService>getSingletonInstance(ServiceLocator.BASICINFO);
	}
	
	private static void waterImage(String path){
		ImageOperate image = null;
		if(path.toLowerCase().endsWith("gif")){
			image = ImageFactory.creator(ImageOperate.GIF);
		}else{
			image = ImageFactory.creator(ImageOperate.JPEG);
		}
		StringBuffer wpath = new StringBuffer();
		wpath.append(getBasicInfoService().findOnly().getSitePath());
		wpath.append(File.separator);
		wpath.append("fileUpload");
		wpath.append(File.separator);
		wpath.append("yeqiangwei.png");
		image.watermark(path,path,wpath.toString(),200,200);
	}
	
	public static String imagepath(int forumId){
		StringBuffer sb = new StringBuffer();
		sb.append(getBasicInfoService().findOnly().getSitePath());
		sb.append(File.separator);
		sb.append("fileUpload");
		sb.append(File.separator);
		sb.append("club");
		sb.append(File.separator);
		sb.append("s");
		sb.append(File.separator);
		File.createFolder(sb.toString());
		sb.append("f");
		sb.append(forumId);
		sb.append(File.separator);
		File.createFolder(sb.toString());
		sb.append(FormatDateTime.formatDateTime("yyyyMM"));
		sb.append(File.separator);
		File.createFolder(sb.toString());
		return sb.toString();
	}
	
	public static String localizeImage(String content, String path){
		List<String> imgs = StringHelper.matcherList(content,"\\[img\\](.*?)\\[/img\\]");
		if(!Validator.isEmpty(imgs)){
			for(int i=0; i<imgs.size(); i++){
				String img = imgs.get(i);
				img = StringHelper.ubbPattern(img,"\\[img\\](.*?)\\[/img\\]","$1",null);
				logger.debug("loading "+img);
				String filename = StringHelper.substring(img,img.lastIndexOf("/")+1,img.length(),null);
				if(filename.indexOf(".")==-1){
					filename = filename+".jpg";
				}
				try {
					if(img.indexOf(getBasicInfoService().findOnly().getFileUploadDomain())==-1){
						logger.debug("create "+path+filename);
						UrlFile.getImage(img,path+filename);
						waterImage(path+filename);
						String vpath = path.replace(getBasicInfoService().findOnly().getSitePath()+File.separator+"fileUpload","");
						vpath = vpath.replace(File.separator,"/");
						vpath = vpath+filename;
						vpath = vpath.replace("//","/");
						vpath = getBasicInfoService().findOnly().getFileUploadDomain()+vpath;
						content = content.replace(img,vpath);
					}
					logger.debug("loaded "+img);
				} catch (Exception e) {
					logger.error(e.toString());
				}
			}
		}
		return content;
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -