bodytag.java

来自「本程序是J2EE的实验」· Java 代码 · 共 70 行

JAVA
70
字号
package com.tag;

import javax.servlet.http.*;
import javax.servlet.jsp.*;
import javax.servlet.jsp.tagext.*;
public class BodyTag extends BodyTagSupport {
	
	public int doStartTag() throws JspException {
		return EVAL_BODY_BUFFERED;
	}
	
	public int doEndTag() throws JspException {
		JspWriter out = pageContext.getOut();
		
		String value = getBodyContent().getString().trim();
		
		try {
			out.print(value + "的大写输出为:");
			out.println(change(value));
		} catch(Exception e) {	}
		
		return EVAL_PAGE;
	}
	
	public String change(String value) {
		String afterChange = "";
		MoneyUtil mu = new MoneyUtil();
		int index = -1;
		
		for(int i = 0; i < value.length(); i++) {
			if(value.charAt(i) > '9' || value.charAt(i) < '0') {
				afterChange = "Error Input!!!";
				break;
			}
		}
		
		if(!afterChange.equals("Error Input!!!")) {
			index = find(value);
		}
		
		if(index == -1) {
			afterChange = "Error Input!!!";
		}
		
		if(!afterChange.equals("Error Input!!!")) {
			Double money = Double.parseDouble(value);
			afterChange = mu.amountToChinese(money);
		}

		return afterChange;
	}
	
	public int find(String value) {
		int index = 0;
		int tag = 0;
		
		for(int i = 0; i < value.length(); i++) {
			if(value.charAt(i) == '.') {
				index = i;
				tag++;
			}
		}
		
		if(tag > 1) {
			index = -1;
		}
		return index;
	}
}

⌨️ 快捷键说明

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