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

📄 regdwordvalue.java

📁 注册表的读取信息,工具文件包
💻 JAVA
字号:
/*
** Java native interface to the Windows Registry API.
** 
** Authored by Timothy Gerard Endres
** <mailto:time@gjt.org>  <http://www.trustice.com>
** 
** This work has been placed into the public domain.
** You may use this work in any way and for any purpose you wish.
**
** THIS SOFTWARE IS PROVIDED AS-IS WITHOUT WARRANTY OF ANY KIND,
** NOT EVEN THE IMPLIED WARRANTY OF MERCHANTABILITY. THE AUTHOR
** OF THIS SOFTWARE, ASSUMES _NO_ RESPONSIBILITY FOR ANY
** CONSEQUENCE RESULTING FROM THE USE, MODIFICATION, OR
** REDISTRIBUTION OF THIS SOFTWARE. 
** 
*/

package com.ice.jni.registry;

import java.io.PrintWriter;


/**
 * The RegDWordValue class represents a double word, or
 * integer, value in the registry (REG_DWORD).
 *
 * @see com.ice.jni.registry.Registry
 * @see com.ice.jni.registry.RegistryKey
 *
 * @version 3.1.3
 *
 */

public class
RegDWordValue extends RegistryValue
	{
	int		data;
	int		dataLen;

	public
	RegDWordValue( RegistryKey key, String name )
		{
		super( key, name, RegistryValue.REG_DWORD );
		this.data = 0;
		this.dataLen = 0;
		}

	public
	RegDWordValue( RegistryKey key, String name, int type )
		{
		super( key, name, type );
		this.data = 0;
		this.dataLen = 0;
		}

	public
	RegDWordValue( RegistryKey key, String name, int type, int data )
		{
		super( key, name, RegistryValue.REG_DWORD );
		this.setData( data );
		}

	public int
	getData()
		{
		return this.data;
		}

	public int
	getLength()
		{
		return this.dataLen;
		}

	public void
	setData( int data )
		{
		this.data = data;
		this.dataLen = 1;
		}

	public byte[]
	getByteData()
		{
		byte[] result = new byte[4];

		result[0] = (byte) ( (this.data >> 24) & 255 );
		result[1] = (byte) ( (this.data >> 16) & 255 );
		result[2] = (byte) ( (this.data >> 8)  & 255 );
		result[3] = (byte) (  this.data        & 255 );

		return result;
		}

	public int
	getByteLength()
		{
		return 4;
		}

	public void
	setByteData( byte[] data )
		{
		int newValue =
			  ( (((int) data[0]) << 24) & 0xFF000000 )
			| ( (((int) data[1]) << 16) & 0x00FF0000 )
			| ( (((int) data[2]) << 8)  & 0x0000FF00 )
			| (  ((int) data[3])        & 0x000000FF );

		this.setData( newValue );
		}

	public void
	export( PrintWriter out )
		{
		out.print( "\"" + this.getName() + "\"=" );

		HexNumberFormat nFmt =
			new HexNumberFormat( "xxxxxxxx" );

		out.println( "dword:" + nFmt.format( this.getData() ) );
		}

	}




⌨️ 快捷键说明

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