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

📄 templatelist.java

📁 JAVA邮件系统
💻 JAVA
字号:
import java.io.*;
import java.text.*;
import java.util.*;

/**
 * 
 *
 * @author Chen Xin Wu
 */
 
 public class TemplateList
 {
 	SingleTemplate	templateArr[];
 	int		templateNum;
	
	public static TemplateList getTemplate(String filename){
		TemplateList TList = new TemplateList();
		if( TList.readTemplate(filename) )
			return TList;
		return null; 
	}
	
 	public boolean readTemplate(String filename)
 	{
 		FileReader freader;

		// 将模板文件读到 templateContents 中
 		try
 		{
  			freader = new FileReader(filename);
 		}catch(Exception e)
 		{
 			return false;
 		}

 		char[] contents = new char[200000];
 		int nSize;
 		try
 		{
	 		nSize = freader.read(contents,0,200000);
			freader.close ();
 		}catch(Exception e)
 		{
 			return false;
 		}
 		String templateContents = new String(contents,0,nSize);
		// 分析模板文件,读入子模板 		
		int start,posi,len,posi1;
		String result,part1,part2;
		String keyword1="<!-- TeleTemplate(",keyword2=" TeleTemplateEND -->";
		int keylen1,keylen2;
		String templateName,templateString;
		
		keylen1 = keyword1.length();
		keylen2 = keyword2.length();
		start = 0;
		templateNum = 0;
		result = new String();
		result = "";
		templateArr = new SingleTemplate[140];
		while(true)
		{
			len = templateContents.length();
			posi = templateContents.indexOf(keyword1,start);
			if(posi==-1)
				break;
			part1 = templateContents.substring(start,posi);
			result = result.concat(part1);
			posi1 = templateContents.indexOf(")",posi+keylen1);
			if(posi1==-1)
				break;
			templateName = templateContents.substring(posi+keylen1,posi1);
			posi = templateContents.indexOf(keyword2,posi1+1);
			if(posi == -1)
				break;
			templateString = templateContents.substring(posi1+1,posi);
			templateArr[templateNum] = new SingleTemplate();
			templateArr[templateNum].makeTemplate(templateName,templateString);
			templateNum++;
		
			templateContents = templateContents.substring(posi+keylen2,len);
		}
		result = result.concat(templateContents);
		templateArr[templateNum] = new SingleTemplate();
		templateArr[templateNum].makeTemplate("ROOT",result);
		templateNum++;
		
 		return true;
	}
	
	public SingleTemplate searchTemplate(String name)
	{
		int i;
		
		for(i=0;i<templateNum;i++)
		{
			if(templateArr[i].hasName(name))
				return templateArr[i];
		}
		return null;
	}
	public int getTemplateNum() { return templateNum; }
	public SingleTemplate getTemplateAt(int i) { return templateArr[i]; }
 }

⌨️ 快捷键说明

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