rust WebP 转换 png 图像

rust WebP 转换 png 图像

[dependencies] image = "0.25.4" webp = "0.3.0" use std::fs::File; use std::io::{BufReader, Read}; use image::DynamicImage; use webp::Decoder; fn main() { // 打开 WebP 文件 let webp_file = File::open("123.webp").expect("无法打开 WebP 文件"); let mut rea...

Rust 2024-10-21 PM 12℃ 0条
Rust 屏幕截图

Rust 屏幕截图

截屏https://github.com/nashaofu/screenshots-rs添加依赖[dependencies]screenshots = "0.5.3"use screenshots::Screen; use std::{fs, time::Instant}; fn main() { let mut start; let screens = Screen::all().unwrap(); fs::create_dir_all("D:/Test/").unwrap(); for screen in screens { ...

Rust 2024-10-20 AM 29℃ 0条
rust 判断txt文本编码 ANSI UTF-8 UTF-8 BOM Unicode

rust 判断txt文本编码 ANSI UTF-8 UTF-8 BOM Unicode

use std::env; use std::fs::File; use std::io::{self, Read}; use std::path::Path; #[derive(Debug)] enum TextType { TextAnsi, TextUtf8, TextUtf8Bom, TextUtf16Le, TextUtf16Be, TextUnknown, } // 检查是否为无BOM的UTF8 fn check_utf8_without_bom(file_name: &str) -> bool { l...

Rust 2024-10-20 AM 26℃ 0条
Rust日志同时输出到终端和文件中

Rust日志同时输出到终端和文件中

[dependencies] ftail ="0.1.2" log = "0.4.22" use log::LevelFilter; use ftail::Ftail; fn main() { Ftail::new() .console(LevelFilter::Debug) .daily_file("logs", LevelFilter::Error) .init() .unwrap(); // 可以在代码中的任何地方记录消息 log::trace!("1This is a trace mess...

Rust 2024-10-17 AM 48℃ 0条
rust aes 中文 加密 解密

rust aes 中文 加密 解密

这个错误表明密钥或初始向量 (IV) 的长度不正确。对于 AES-128 加密,密钥和 IV 的长度必须是 16 字节(128 位)。在之前的示例中,密钥和 IV 的长度是 15 字节,这是不正确的。我们需要确保密钥和 IV 的长度都是 16 字节。以下是修正后的代码:步骤 1:添加依赖项在你的 Cargo.toml 文件中添加 aes、block-modes 和 hex 依赖项:[dependencies] aes = "0.7" block-modes = "0.8" hex = "0.4"步骤 2:编写示例代码在 src/...

Rust 2024-10-13 AM 83℃ 0条
rust des 中文 加密 解密

rust des 中文 加密 解密

在 Rust 中,你可以使用 des 和 block-modes crate 来进行 DES 加密和解密。以下是一个示例,演示如何使用这些 crate 对中文字符串进行 DES 加密和解密。步骤 1:添加依赖项在你的 Cargo.toml 文件中添加 des、block-modes 和 hex 依赖项:[dependencies] des = "0.7" block-modes = "0.8" hex = "0.4"步骤 2:编写示例代码在 src/main.rs 文件中编写代码,演示如何使用 des crate 进行 DES ...

Rust 2024-10-13 AM 79℃ 0条
rust 创建 sqlite  批量插入 关键词 不重复

rust 创建 sqlite 批量插入 关键词 不重复

在 Rust 中,你可以使用 rusqlite crate 来与 SQLite 数据库进行交互。以下是一个示例,演示如何创建一个 SQLite 数据库,并批量插入不重复的关键词。步骤 1:添加依赖项在你的 Cargo.toml 文件中添加 rusqlite 依赖项:[dependencies] rusqlite = "0.26"步骤 2:编写示例代码在 src/main.rs 文件中编写代码,演示如何创建 SQLite 数据库,并批量插入不重复的关键词:src/main.rsuse rusqlite::{params, Connection, Result}; fn...

Rust 2024-10-13 AM 71℃ 0条
rust  命令行程序 检测自己是否 管理员权限运行

rust 命令行程序 检测自己是否 管理员权限运行

[dependencies] winapi = { version = "0.3", features = ["winnt", "processthreadsapi", "securitybaseapi", "handleapi", "errhandlingapi"] } extern crate winapi; use std::ptr::null_mut; use winapi::um::processthreadsapi::OpenProcessToken;...

Rust 2024-10-10 PM 81℃ 0条
rust sysinfo库 获取windows 系统进程列表

rust sysinfo库 获取windows 系统进程列表

[dependencies] sysinfo = "0.32.0" use sysinfo::{ Components, Disks, Networks, System, }; fn main() { // Please note that we use "new_all" to ensure that all lists of // CPUs and processes are filled! let mut sys = System::new_all(); // First we update all information o...

Rust 2024-10-09 PM 82℃ 0条
rust获取系统剪切板内容

rust获取系统剪切板内容

[dependencies] arboard = "2.0" use arboard::Clipboard; fn main() { loop{ // 创建一个剪切板实例 let mut clipboard = Clipboard::new().expect("Failed to create clipboard instance"); // 获取剪切板内容 match clipboard.get_text() { Ok(text) => println!("Clipboar...

Rust 2024-10-09 PM 91℃ 0条
rust 获取 windows 系统运行时间

rust 获取 windows 系统运行时间

[dependencies] winapi = { version = "0.3", features = ["sysinfoapi"] } extern crate winapi; use winapi::um::sysinfoapi::GetTickCount64; fn get_windows_uptime() -> u64 { unsafe { GetTickCount64() } } fn main() { // 获取系统运行时间(以毫秒为单位) let uptime_ms = get_win...

Rust 2024-10-09 PM 81℃ 0条