java - 在 Java 中获取 Windows 充电状态

标签 java windows jna battery

我正在尝试判断天气,我的 Windows 笔记本电脑正在充电。我希望它进行检查,如果正在充电则返回 1 或 true,如果没有充电则返回 0 或 false。我按照 How to get the remaining battery life in a Windows system? 上的说明进行操作,但我不知道如何解析答案并获取充电状态。有人有建议吗?

编辑:我希望能够输入类似的内容 boolean 电池 = getBattery(); 并让它返回 true 或 false

最佳答案

您可以使用引用的 source 中的 getBatteryFlagString() 方法。 。或者直接使用 BatteryFlag 并检查它是否等于 8,详细信息请参阅 getBatteryFlagString

类似于:

Kernel32.SYSTEM_POWER_STATUS batteryStatus = new Kernel32.SYSTEM_POWER_STATUS();
Kernel32.INSTANCE.GetSystemPowerStatus(batteryStatus);

boolean battery = batteryStatus.BatteryFlag==8; 

关于java - 在 Java 中获取 Windows 充电状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15121646/

相关文章:

java - 手工Java程序

windows - 更改 PDF 文件的文本和背景颜色

c++ - 为什么通过同一个 COM 对象的不同接口(interface)检索到的 IUnknown* 指针具有相同的值?

java - 为什么 RMI 注册表需要访问 stub 类文件?

java - 读取包含一行和多个变量的 txt 文件时遇到问题

windows - 结束进程和结束进程树之间的区别

java - native 库在某些 JVM 上无法正常工作

java - Jna,指针已经映射到代理接口(interface)

java - (将 c# 转换为 Java JNA) - 从 hwnd GetModuleFileName

java - H2数据库是否兼容Oracle 'Insert All'语句?