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

📄 xmlexampletaglet.java

📁 著名的开源仿真软件yale
💻 JAVA
字号:
/* *  YALE - Yet Another Learning Environment *  Copyright (C) 2002, 2003 *      Simon Fischer, Ralf Klinkenberg, Ingo Mierswa,  *          Katharina Morik, Oliver Ritthoff *      Artificial Intelligence Unit *      Computer Science Department *      University of Dortmund *      44221 Dortmund,  Germany *  email: yale@ls8.cs.uni-dortmund.de *  web:   http://yale.cs.uni-dortmund.de/ * *  This program is free software; you can redistribute it and/or *  modify it under the terms of the GNU General Public License as  *  published by the Free Software Foundation; either version 2 of the *  License, or (at your option) any later version.  * *  This program is distributed in the hope that it will be useful, but *  WITHOUT ANY WARRANTY; without even the implied warranty of *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *  General Public License for more details. * *  You should have received a copy of the GNU General Public License *  along with this program; if not, write to the Free Software *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 *  USA. */package edu.udo.cs.yale.doc;import edu.udo.cs.yale.tools.Tools;import com.sun.tools.doclets.*;import com.sun.javadoc.*;import java.util.Map;import java.io.*;public class XMLExampleTaglet implements TexTaglet {    private static final String NAME = "yale.xmlinput";    public String getName() { return NAME; }    public boolean inField() { return true; }    public boolean inConstructor() { return true; }    public boolean inMethod() { return true; }    public boolean inOverview() { return true; }    public boolean inPackage() { return true; }    public boolean inType() { return true; }    public boolean isInlineTag() { return true; }    public static void register(Map tagletMap) {	XMLExampleTaglet tag = new XMLExampleTaglet();	Taglet t = (Taglet) tagletMap.get(tag.getName());	if (t != null) {	    tagletMap.remove(tag.getName());	}	tagletMap.put(tag.getName(), tag);    }    private String[] split(Tag tag) {	String[] result = tag.text().split("\\|");	if (result.length != 3) {	    System.err.println("Usage: {@"+getName()+" filename|label|caption} (was: "+tag.text()+") ("+tag.position()+")");	    return null;	}	return result;    }    private File resolve(String file, SourcePosition source) {	return new File(source.file().getParentFile(), file);    }    public String toString(Tag tag) {	String[] splitted = split(tag);	if (splitted == null) return "";	File file = resolve(splitted[0], tag.position());	String contents = null;	if (file.exists()) {	    try {		contents = Tools.readTextFile(file);		contents = contents.replaceAll("<", "&lt;");		contents = contents.replaceAll(">", "&gt;");	    } catch (IOException e) {		contents = "Cannot read file '"+file+"': "+e;		System.err.println(tag.position()+": cannot read file '"+file+"'!");	    }	} else {	    contents = "File '"+file+"' does not exist!";	    System.err.println(tag.position()+": File '"+file+"' does not exist!");	}	return "<pre>"+contents+"</pre><br><center><i>Figure:</i> "+splitted[2]+"</center>";    }        public String toString(Tag[] tags) {        return null;    }    public String toTex(Tag tag) {	String[] splitted = split(tag);	if (splitted == null) return "";	File file = resolve(splitted[0], tag.position());	if (!file.exists()) {	    System.err.println(tag.position()+": File '"+file+"' does not exist!");	    return "";	} else {	    return "\\examplefile{" + file.getAbsolutePath() + "}{" + splitted[1] + "}{" + splitted[2] + "}";	}    }    public String toTex(Tag[] tag) { 	return null;     }}

⌨️ 快捷键说明

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