userfile.java

来自「一个日本流行的,功能较全的开源Web办公管理(Groupware)系统。」· Java 代码 · 共 167 行

JAVA
167
字号
package jp.co.sjts.gsession.main;

/*
 * 屄恖忣曬僼傽僀儖  UserFile.java
 * Copyright (C) 1999-2000 Japan Total System Co,LTD
 *    Satoru K  <koni@sjts.co.jp>
 */

import java.io.IOException;
import java.io.PrintWriter;
import java.io.BufferedReader;
import java.io.File;
import java.util.StringTokenizer;
import jp.co.sjts.gsession.tools.*;

public class UserFile extends User
{
	public static final String FILENAME = "user";

	public static final String NAME			= "name";
	public static final String KANA			= "kana";
	public static final String EMAIL		= "email";
	public static final String POSITION		= "position";
	public static final String POSTNO		= "postno";
	public static final String ADDRESS1		= "address1";
	public static final String ADDRESS2		= "address2";
	public static final String TEL			= "tel";
	public static final String FAX			= "fax";
	public static final String PTEL1		= "ptel1";
	public static final String PTEL2		= "ptel2";
	public static final String MEMO			= "memo";
	public static final String SHASHIN		= "shashin";
	public static final String DEFAULTGROUP	= "defaultgroup";


	protected File file=null;

	public UserFile(String dir)
	{
		File dirbuf = new File(dir);
		if(!dirbuf.exists())
			dirbuf.mkdirs();

		file = new File(dir,getFilename());
	}

	protected String getFilename()
	{
		return FILENAME;
	}

	public void Load() throws GSException
	{
		BufferedReader bf = GSTextFile2.OpenLoad(file);
		try {
			_read(bf);
			bf.close();
		} catch(GSException e) {
			throw e;
		} catch(IOException e) {
			throw new GSException("IO僄儔乕",e);
		}
	}

	protected void _read(BufferedReader bf) throws GSException
	{
		try {
			String buf = new String();
			String label,value;
			for(buf=bf.readLine();buf!=null;buf=bf.readLine())
			{
				StringTokenizer st = new StringTokenizer(buf,"=");
				label = st.nextToken();
				if(st.hasMoreTokens())
					value = GSTool.delimitDecorde("=",st.nextToken());
				else
					value = "";

				checkStore(label,value);
			}
		} catch(IOException e) {
			throw new GSException("\"User file\"撉崬傒僄儔乕");
		}
	}

	protected boolean checkStore(String label,String value)
	{
		boolean ret=false;

		if(label.equals(NAME)){
			setName(value);
			ret=true;
		}else if(label.equals(KANA)){
			setKana(value);
			ret=true;
		}else if(label.equals(EMAIL)){
			setEmail(value);
			ret=true;
		}else if(label.equals(POSITION)){
			setPosition(value);
			ret=true;
		}else if(label.equals(POSTNO)){
			setPostno(value);
			ret=true;
		}else if(label.equals(ADDRESS1)){
			setAddress1(value);
			ret=true;
		}else if(label.equals(ADDRESS2)){
			setAddress2(value);
			ret=true;
		}else if(label.equals(TEL)){
			setTel(value);
			ret=true;
		}else if(label.equals(FAX)){
			setFax(value);
			ret=true;
		}else if(label.equals(PTEL1)){
			setPtel1(value);
			ret=true;
		}else if(label.equals(PTEL2)){
			setPtel2(value);
			ret=true;
		}else if(label.equals(MEMO)){
			setMemo(GSHtml.BRtoReturn(value));
			ret=true;
		}else if(label.equals(SHASHIN)){
			if((value!=null)&&(value.length()>0))
				setShashin(true);
			else
				setShashin(false);
			ret=true;
		}else if(label.equals(DEFAULTGROUP)){
			setDefaultGroup(Integer.parseInt(value));
			ret=true;
		}
		return ret;
	}

	public void Save() throws GSException
	{
		PrintWriter pw = GSTextFile2.OpenSave(file);

		_write(pw);

		pw.flush();
		pw.close();
	}

	protected void _write(PrintWriter pw)
	{
		pw.println(NAME + "=" + GSTool.delimitEncorde("=",getName()));
		pw.println(KANA + "=" + GSTool.delimitEncorde("=",getKana()));
		pw.println(EMAIL + "=" + GSTool.delimitEncorde("=",getEmail()));
		pw.println(POSITION + "=" + GSTool.delimitEncorde("=",getPosition()));
		pw.println(POSTNO + "=" + GSTool.delimitEncorde("=",getPostno()));;
		pw.println(ADDRESS1 + "=" + GSTool.delimitEncorde("=",getAddress1()));
		pw.println(ADDRESS2 + "=" + GSTool.delimitEncorde("=",getAddress2()));
		pw.println(TEL + "=" + GSTool.delimitEncorde("=",getTel()));
		pw.println(FAX + "=" + GSTool.delimitEncorde("=",getFax()));
		pw.println(PTEL1 + "=" + GSTool.delimitEncorde("=",getPtel1()));
		pw.println(PTEL2 + "=" + GSTool.delimitEncorde("=",getPtel2()));
		pw.println(MEMO + "=" + GSTool.delimitEncorde("=",GSHtml.ReturntoBR(getMemo())));
		pw.println(SHASHIN + "=" + GSTool.delimitEncorde("=",getShashin()));
		pw.println(DEFAULTGROUP + "=" + Integer.toString(getDefaultGroup()));
	}
}

⌨️ 快捷键说明

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