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

📄 inituser.java

📁 一个功能强大的聊天程序
💻 JAVA
字号:
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.PrintStream;
import java.util.Vector;
import java.util.Hashtable;
import java.util.Enumeration;
import java.util.StringTokenizer;
import java.security.MessageDigest;

//  java initUser rm# uid password_text

public class initUser {

	public static void main(String[] args) {
		int i = 0;
		Hashtable parms = readConf(args[0] + "/users/" + args[1] + ".conf");
		try {
			FileOutputStream outFile = new FileOutputStream(args[0] + "/users/" + args[1] + ".conf");
			PrintStream out = new PrintStream(outFile);
			out.println("// a user.conf file\n");
			out.println("name = " + parms.get("name"));
			String pw = digest(args[2]);
			out.println("password = |" + pw + "|");
	System.out.println(pw);
			out.println("admin = " + parms.get("admin"));
			out.println("fullName = " + parms.get("fullName"));
			out.println("email = " + parms.get("email"));
			out.println("url = " + parms.get("url"));
			out.println("address = " + parms.get("address"));
			out.println("phone = " + parms.get("phone"));

			out.close();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	//============================================================================
	private static String digest(String theStr) {
		try {
			byte[] theBytes = new byte[theStr.length()];
			theStr.getBytes(0, theStr.length(), theBytes, 0);
			MessageDigest md = MessageDigest.getInstance("MD5");
			md.update(theBytes);
			String digestedStr = new String(md.digest());
	System.out.println(digestedStr + "     length = " + digestedStr.length());
			return digestedStr;
		} catch (Exception e) {
			e.printStackTrace();
		}
		return "Digest Error";
	}

	//============================================================================
	public static Hashtable readConf(String fname) {

		Hashtable rtn = new Hashtable(20,10);

		File f1 = new File(fname);
		if (f1.exists()) { 
//			System.out.println("file exists");
			try {
				FileInputStream inFile = new FileInputStream(f1);
				int size = (int)f1.length();
				byte[] fileBytes = new byte[size];
				inFile.read(fileBytes);
				inFile.close();
				String fileString = new String(fileBytes, 0);
//				System.out.println(fileString);

				// get each line fron the fileString
				// if a line begins with "//" then skip it
				// else break it into parm = value
				StringTokenizer fileTokens = new StringTokenizer(fileString, "\n\r");
				while (fileTokens.hasMoreTokens()) {
					String line = fileTokens.nextToken();
					if (!line.startsWith("//")) {
						StringTokenizer lineTokens = new StringTokenizer(line, "=;");
						if (lineTokens.countTokens() >= 2) {
							String parm = lineTokens.nextToken().trim();
							String value = lineTokens.nextToken().trim();
//							System.out.println("Parm:  " + parm + "  =  Value: " + value);
							rtn.put(parm, value);
						}
					}
				}
			} catch (Exception e) {
				e.printStackTrace();
			}
		} else {
			System.out.println("file does NOT exist: " + fname);
		}

//		System.out.println("\n=======================\nreadConf(" + fname + ")");
//		Enumeration e = rtn.keys();
//		while (e.hasMoreElements()) {
//			String junk = (String)e.nextElement();
//			System.out.println("Key: " + junk + "  =  Value: " + rtn.get(junk));
//		}

		return rtn;
	}




}

⌨️ 快捷键说明

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