`
yang_min
  • 浏览: 342979 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

java的一些实用工具方法(用的时候随手了)

阅读更多
// 将127.0.0.1 形式的IP地址转换成10进制整数,这里没有进行任何错误处理
	public static long ipToLong(String strIP) {
		long[] ip = new long[4];
		// 先找到IP地址字符串中.的位置
		int position1 = strIP.indexOf(".");
		int position2 = strIP.indexOf(".", position1 + 1);
		int position3 = strIP.indexOf(".", position2 + 1);
		// 将每个.之间的字符串转换成整型
		ip[0] = Long.parseLong(strIP.substring(0, position1));
		ip[1] = Long.parseLong(strIP.substring(position1 + 1, position2));
		ip[2] = Long.parseLong(strIP.substring(position2 + 1, position3));
		ip[3] = Long.parseLong(strIP.substring(position3 + 1));
		return (ip[0] << 24) + (ip[1] << 16) + (ip[2] << 8) + ip[3];
	}

 ********************适当的分割线****************************

 

/**
	 * 判断ip地址的合法性
	 */
	public static boolean isValidIPAddress(String str) {
		String temp = "";
		int tag = 0;
		//字符串的第一位和最后以为如果是.的话返回false
		if (str.charAt(0) == '.' || str.charAt(str.length() - 1) == '.')
			return false;
		for (int i = 0; i < str.length(); i++) {
			System.out.println("temp ==="+temp);
			if (str.charAt(i) == '.') {
				System.out.println("tag1 === "+tag);
				tag++;
				System.out.println("tag2 === "+tag);
				
				if (Integer.parseInt(temp) > 255)
					return false;
				temp = "";
				continue;
			}
			if (str.charAt(i) < '0' || str.charAt(i) > '9')
				return false;
			temp += String.valueOf(str.charAt(i));
		}
		System.out.println("tag3 =="+tag);
		if (tag != 3)
			return false;
		return true;
	}

 

********************适当的分割线****************************

 

 

public static int isInnerIP(long a_ip)// 检查ip地址是否是内网ip
	{
		int bValid = -1;
		if ((a_ip >> 24 == 0xa) || (a_ip >> 16 == 0xc0a8)
				|| (a_ip >> 22 == 0x2b0)) {
			bValid = 0;
		}
		return bValid;
	}

 

********************适当的分割线****************************

 

//	通过参数将ActionForm中的数据和xml文件中的值绑定可以进行读写操作..
	public boolean setFormDataToXML(ConfigVrrpParametersForm vrrpForm,
			String xml, String root) {
		File xmlFile = new File(xml);
		boolean b = false;
		// String root = "configVRRP";
		DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
		try {
			// b = false;
			DocumentBuilder db = dbf.newDocumentBuilder();
			Document doc = db.parse(xmlFile);
			NodeList nodelist = doc.getElementsByTagName(root);
			int size = nodelist.getLength();
			for (int i = 0; i < size; i++) {
				Node n = nodelist.item(i);
				NodeList nl2 = n.getChildNodes();
				int size2 = nl2.getLength();
				for (int j = 0; j < size2; j++) {
					Node n2 = nl2.item(j);
					if (n2.hasChildNodes()) {
						String name = n2.getNodeName();
						// String value = n2.getFirstChild().getNodeValue();
						Node value = n2.getFirstChild();
						if (name.equals("vrrp_Type")) {
							String formValue = vrrpForm.getVrrp_Type();
							if (null != formValue) {
								value.setNodeValue(formValue);
							}else{
								value.setNodeValue("");
							}
								
						}
						if (name.equals("ha_Monitoring_interface")) {
							String formValue = vrrpForm
									.getHa_Monitoring_interface();
							if (null != formValue) {
								value.setNodeValue(formValue);
							}else{
								value.setNodeValue("");
							}
						}
						if (name.equals("vistual_IP")) {
							String formValue = vrrpForm.getVistual_IP();
							if (null != formValue) {
								value.setNodeValue(formValue);
							}else{
								value.setNodeValue("");
							}

						}
						if (name.equals("vistual_route_ID")) {
							String formValue = vrrpForm.getVistual_route_ID();
							if (null != formValue) {
								value.setNodeValue(formValue);
							}else{
								value.setNodeValue("");
							}
						}
						if (name.equals("priority_Value")) {
							String formValue = vrrpForm.getPriority_Value();
							if (null != formValue) {
								value.setNodeValue(formValue);
							}else{
								value.setNodeValue("");
							}
						}
						if (name.equals("auth_Type")) {
							String formValue = vrrpForm.getAuth_Type();
							if (null != formValue) {
								value.setNodeValue(formValue);
							}else{
								value.setNodeValue("");
							}
						}
						if (name.equals("auth_Pass")) {
							String formValue = vrrpForm.getAuth_Pass();
							if (null != formValue) {
								value.setNodeValue(formValue);
							}else{
								value.setNodeValue("");
							}
						}
					}
				}
				outputXmlFile(n,xml);
				b = true;
			}
		} catch (ParserConfigurationException ex) {
			ex.printStackTrace();
		} catch (IOException ex) {
			ex.printStackTrace();
		} catch (SAXException ex) {
			ex.printStackTrace();
		}
		return b;
	}

	public static void outputXmlFile(Node node,String outxmlFile) {
		// 根据节点生成xml文件的
		TransformerFactory transFactory = TransformerFactory.newInstance();
		try {
			Transformer transformer = transFactory.newTransformer();
			transformer.setOutputProperty("encoding", "utf-8");
			transformer.setOutputProperty("indent", "yes");

			DOMSource source = new DOMSource();
			if (source != null) {
				if (node != null) {
					source.setNode(node);
				}
				StreamResult result = new StreamResult(outxmlFile);
				File a = new File("c:\\configVRRPym.xml");
				// result.setOutputStream(System.out);
				transformer.transform(source, result);
			}
		} catch (TransformerConfigurationException e) {
			e.printStackTrace();
		} catch (TransformerException e) {
			e.printStackTrace();
		}
	}

 

分享到:
评论

相关推荐

    java随手画程序 手绘板

    总的来说,Java随手画程序是一个集成了Java AWT和Swing图形库,实现了基本绘图、智能绘图、图形保存与读取等功能的实用工具。开发者通过熟练运用Java的图形处理能力,为用户提供了便捷的图形创作平台。无论是对初学...

    Android 随手记 suishouji

    总结起来,Android随手记不仅是一款实用的财务管理工具,其背后的开发技术也涵盖了Android UI设计、数据存储、网络通信、数据分析等多个方面,对于提升Android开发者的技能水平有着极大的帮助。通过深入研究开源项目...

    Android应用源码随手记安卓记账项目

    开发者可能旨在提供一个易于理解和使用的工具,帮助用户快速记录和管理日常收支。 【描述】提到"没有花哨的功能,没有复杂的界面",这暗示了该应用可能设计简洁,用户体验友好。源码可能是为了教学目的或者展示基础...

    javaweb jdbc工具类.zip

    本压缩包"javaweb-jdbc工具类.zip"提供了一个实用的工具包,旨在简化数据库操作,使持久层 Dao 包的编写更加简便,提高开发效率。下面我们将详细探讨JDBC工具类的关键知识点。 1. **数据库连接管理**:在Java Web...

    Android随手记

    总之,Android随手记是一个深度集成Android特性的应用,通过优秀的用户界面和实用的功能,为学习者提供了高效记录和管理知识的工具。其背后涉及到的Android开发技术、数据管理策略以及用户体验设计都是移动应用开发...

    随手涂鸦 画板

    在移动设备上,我们常常会遇到各种各样的应用程序,其中“随手涂鸦”类的应用因其趣味性和实用性而深受用户喜爱。Android Studio作为Google官方推荐的Android应用开发工具,提供了强大的功能来帮助开发者实现这类...

    安卓平台应用开发实战-随手记

    "安卓平台应用开发实战-随手记"这个主题聚焦于实际操作,旨在帮助开发者构建一个实用的日记应用,这将涵盖从设计用户界面到实现数据存储等一系列关键知识点。 首先,我们要了解安卓开发的基础。Android SDK(软件...

    LBS^2 随手日记

    5. **后端开发**:服务器端处理用户的请求,可能使用Node.js(Express.js)、Python(Django或Flask)、Java(Spring Boot)等语言和框架。后端需要处理用户登录注册、数据验证、日记保存和检索等功能。 6. **响应...

    HiJson小工具全能解析json

    描述中的“经常开发的同学放于桌面可以随手随时使用,轻松方便”强调了HiJson工具的易用性和实用性。对于频繁处理JSON的开发者来说,将其置于桌面可快速访问,意味着可以节省在项目开发过程中进行JSON验证、格式化或...

    Javademo源码-helloworld:日常学习积累,看书和视频过程中随手写的demo。jdk源码的阅读笔记等

    本资源“Javademo源码-helloworld”是一个针对Java学习者的实用资料集合,旨在帮助开发者通过实例来深入理解和掌握Java编程。下面将详细阐述这个资源包含的知识点。 首先,“helloworld”是最基础的程序示例,它...

    移动应用Android 随手记记账应用源码.rar

    Android平台上的“随手记记账应用”就是这样一款实用的应用程序。本文将深入探讨这款应用的源码,揭示其背后的开发技术和设计理念,帮助开发者理解和学习如何构建一个高效、易用的移动记账应用。 首先,从Android...

    Android 随手记记账应用源码.zip

    1. **Android开发环境**:此应用是使用Android Studio进行开发的,因此需要对Java或Kotlin编程语言有基础,同时熟悉Android Studio的开发环境和Gradle构建系统。 2. **UI设计**:应用界面设计遵循Material Design...

    圆形菜单是一个可以随手势滑动旋转的菜单

    为了实现上述功能,开发者可能需要使用一些设计模式,如MVC(模型-视图-控制器)或MVVM(模型-视图-ViewModel),以保持代码的清晰和可维护性。同时,良好的用户体验设计原则,如一致性、反馈、易用性等,也需要贯穿...

    书籍管理系统(含源代码)

    SQL语句被用来执行增删改查操作,而ORM(对象关系映射)工具如JPA或Hibernate则将这些SQL操作转化为Java对象的方法调用,简化了数据库操作。 在部署和运行时,系统可能依赖于Apache Tomcat、Jetty等Java应用服务器...

    DeckBuilder:这是创建混洗的52卡套的基本构建器。 跟随手和玩游戏的功能

    总之,DeckBuilder是一个旨在提供卡牌游戏套牌构建功能的实用工具,通过Java实现,具有跨平台、易于使用和可扩展性等特点,能够满足玩家在游戏中创建个性化套牌的需求。无论是对Java编程初学者还是资深开发者,...

    Suishouji.rar_DEMO_suishouji.rar

    《随手记——一款实用的财务管理应用DEMO解析》 随手记,这是一款专注于个人与小型企业财务管理的应用程序,它的DEMO版本为我们提供了一个初步了解其功能和操作方式的机会。通过下载并研究"Suishouji.rar_DEMO_...

    android 饼图

    使用`mpandroidchart`,你可以轻松地创建炫酷的主题,就像“随手记”应用那样。 创建饼图的基本步骤如下: 1. 添加依赖:在项目的`build.gradle`文件中添加`mpandroidchart`库的依赖,例如: ```gradle ...

    基于WEB的家庭理财系统的设计与实现.doc

    国内则有越来越多的企业和个人开发者投入到这个领域,开发出适应中国用户习惯的理财工具,如“随手记”、“挖财”等,这些系统通常具有收支记录、预算设定、账单分析等功能。 1.3 系统开发目标 本系统的目标是提供...

    毕业设计论文附件 毕业论文附件 android 个人理财

    - **技术栈**:使用Java语言进行开发,并利用Android SDK构建应用界面。此外,还将学习和应用SQLite数据库技术来存储用户数据。 - **参考文献**:为了确保项目的顺利进行,参考了一系列专业书籍和技术文档,包括...

    人机交互指导书

    - **建模技巧**: 分享了在建模过程中的一些实用技巧,帮助提高建模效率和质量。 - **参考文献**: 提供了进一步学习和研究的资料来源。 以上内容全面覆盖了《人机交互指导书》中提到的关键知识点,旨在为读者提供...

Global site tag (gtag.js) - Google Analytics