当前位置: 首页 > article >正文

qt控制台程序与qt窗口程序在读取数据库中文字段的差异!!巨坑

问题:最近在自己编写一个类,这个类需要对mysql数据库进行插入和查询。因为最后是以一个类文件的形式拿来单独使用,所以在创建项目的时候就创建了一个qt的控制台程序。但是在对数据库的内容进行查询时,出现了中文乱码。参考了之前的程序对数据的读写,感觉没有什么差异,最后想到可能是控制台程序和qt桌面程序处理方式不一样,最后才发现确实是有这么一个坑存在。

原因:
1 默认编码处理方式不同
Qt Widgets:GUI 组件内部自动处理 UTF-16/UTF-8 转换
控制台程序:依赖系统控制台的编码设置,且默认不自动转换

2.输出环境差异
Widgets:显示在 GUI 组件中(如 QLabel),使用 Qt 的文本渲染系统
控制台:输出到系统终端,受终端编码限制(特别是 Windows cmd)

  1. 文本编解码器默认设置不同
    Widgets 应用通常有更完整的编码初始化
    控制台程序默认可能使用本地编码(如 Windows 的 GBK)

解决方式:
添加如下代码

#include <windows.h>// 在 main() 中:
SetConsoleOutputCP(65001); // 设置控制台输出为 UTF-8
QTextCodec::setCodecForLocale(QTextCodec::codecForName("UTF-8"));

如果是Linux系统,应该就不需要windows那块代码,因为Linux下默认使用utf8

相关文章:

qt控制台程序与qt窗口程序在读取数据库中文字段的差异!!巨坑

问题&#xff1a;最近在自己编写一个类&#xff0c;这个类需要对mysql数据库进行插入和查询。因为最后是以一个类文件的形式拿来单独使用&#xff0c;所以在创建项目的时候就创建了一个qt的控制台程序。但是在对数据库的内容进行查询时&#xff0c;出现了中文乱码。参考了之前的…...

动手学深度学习12.7. 参数服务器-笔记练习(PyTorch)

以下内容为结合李沐老师的课程和教材补充的学习笔记&#xff0c;以及对课后练习的一些思考&#xff0c;自留回顾&#xff0c;也供同学之人交流参考。 本节课程地址&#xff1a;35 分布式训练【动手学深度学习v2】_哔哩哔哩_bilibili 本节教材地址&#xff1a;12.7. 参数服务器…...

告别数据泥沼,拥抱智能中枢:King’s四位一体重塑科研生产力

在现代科研的战场上&#xff0c;数据堪称科研人员手中的“弹药”。然而&#xff0c;许多实验室却深陷数据管理的泥沼&#xff1a;硬盘里堆满了不同年份的实验记录&#xff0c;U盘里塞着各种格式的谱图&#xff0c;Excel表格里还留着手动计算的痕迹……&#xff0c;当科研人员想…...

智绅科技 —— 智慧养老 + 数字健康,构筑银发时代安全防护网

在老龄化率突破 21.3% 的当下&#xff0c;智绅科技以 "科技适老" 为核心理念&#xff0c;构建 "监测 - 预警 - 干预 - 照护" 的智慧养老闭环。 其自主研发的七彩喜智慧康养平台&#xff0c;通过物联网、AI 和边缘计算技术&#xff0c;实现对老年人健康与安…...

Code Composer Studio CCS 工程设置,如何设置h文件查找路径?

右键工程,选Properties,在Build>MSP430 Compiler>Optinizution Include Options 设置头文件的搜索路径。 比如我设置了这些: ${CCS_BASE_ROOT}/msp430/include ${PROJECT_ROOT} ${CG_TOOL_ROOT}/include "${workspace_loc:/${ProjName}/F5xx_F6xx_Core_Lib}&quo…...

Qt生成日志与以及捕获崩溃文件(mingw64位,winDbg)————附带详细解说

文章目录 Qt生成日志与以及报错文件(mingw64位&#xff0c;winDbg)0 背景与结果0.1 背景0.2 结果1 WinDbg1.1 安装1.2 使用 2 编写代码2.1 ccrashstack类2.2 编写输出捕获异常的dmp文件2.2 编写输出日志文件2.3 调用生成日志和dmp文件 参考 Qt生成日志与以及报错文件(mingw64位…...

web前端开发如何适配各分辨率

在开发Web应用时&#xff0c;适配不同的显示器分辨率是确保用户体验一致性的关键。以下是一些常见的显示器分辨率。 常见的显示器分辨率 PC屏幕分辨率 1366 x 768&#xff1a;普通液晶显示器 1920 x 1080&#xff1a;高清液晶显示器 2560 x 1440&#xff1a;2K高清显示器 4096…...

本机无法远程别的计算机的方法

在本地计算机上修改组策略 按下 Win R 组合键打开运行窗口&#xff0c;输入 gpedit.msc 并回车&#xff0c;打开组策略编辑器。依次展开路径&#xff1a;计算机配置 > 管理模板 > 系统 > 凭据分配。在右侧找到并双击 加密 Oracle 修正 策略。选择 已启用&#xff0c…...

智能手表健康监测系统的PSRAM存储芯片CSS6404LS-LI—高带宽、耐高温、微尺寸的三重突破

一、直击智能手表三大核心痛点 痛点场景风险传统方案缺陷连续生物数据流存储100Hz PPG信号产生82MB/s数据洪峰SPI NOR Flash带宽不足(≤50MB/s)高温环境稳定性腕表表面温度达50℃&#xff08;烈日/运动场景&#xff09;商用级存储器件(85℃)易触发数据错误极限空间约束PCB面积…...

蓝桥杯国赛题2022

首先这个题应该是一个01背包&#xff0c;背包容量为2022&#xff0c;有2022个物品&#xff0c;第i个物品的体积为i&#xff0c;只不过这里有两个限制条件&#xff0c;一个限制条件是和为2022&#xff0c;另一个限制条件为10个数&#xff0c;两个限制条件那就把加一维&#xff0…...

Pycharm中添加不了新建的Conda环境(此篇专门给Daidai写的)

安装好了Conda之后&#xff0c;在系统终端也创建好Conda环境&#xff0c;一切显示正常&#xff0c;但在Pycharm中添加不了新建的Conda环境&#xff0c;显示“Conda executable is not found” 解决“Conda executable is not found” conda环境新建如下 D:/Programs/anacond…...

如何选择专业数据可视化开发工具?为您拆解捷码全功能和落地指南!

分享大纲&#xff1a; 1、捷码核心功能&#xff1a;4维能力支撑大屏开发 2、3步上手&#xff1a;可视化大屏开发操作路径 3、适配场景&#xff1a;8大行业已验证方案 在各行各业要求数字化转型时代&#xff0c;数据可视化大屏已成为众多企业数据驱动的核心工具。面对市场上繁杂…...

关于如何使用VScode编译下载keil工程的步骤演示

1、vscode的插件市场下载keil Assistant 2 、点设置 3、复制keil的地址 4、粘贴到第…...

微信小程序动态效果实战指南:从悬浮云朵到丝滑列表加载

小红书爆款交互设计解析&#xff0c;附完整代码&#xff01; &#x1f525; 一、为什么动态效果是小程序的关键竞争力&#xff1f; 用户留存提升&#xff1a;数据显示&#xff0c;86.3%的微商从业者依赖微信小程序&#xff0c;而动态效果能显著降低跳出率。技术赋能体验&#…...

Redis底层数据结构之深入理解跳表(2)

上一篇文章中我们详细讲述了跳表的增添、查找和修改的操作&#xff0c;这篇文章我们来讲解一下跳表在多线程并发时的安全问题。在Redis中&#xff0c;除了网络IO部分和大文件的后台复制涉及到多线程外&#xff0c;其余任务执行时全部都是单线程&#xff0c;这也就意味着在Redis…...

大模型编程助手-Cline

官网&#xff1a; https://cline.bot/ Cline 是一款深度集成在 Visual Studio Code&#xff08;VSCode&#xff09; 中的开源 AI 编程助手插件&#xff0c;旨在通过结合大语言模型&#xff08;如 Claude 3.5 Sonnet、DeepSeek V3、Google Gemini 等&#xff09;和工具链&#…...

[蓝桥杯]兰顿蚂蚁

兰顿蚂蚁 题目描述 兰顿蚂蚁&#xff0c;是于 1986 年&#xff0c;由克里斯兰顿提出来的&#xff0c;属于细胞自动机的一种。 平面上的正方形格子被填上黑色或白色。在其中一格正方形内有一只"蚂蚁"。 蚂蚁的头部朝向为&#xff1a;上下左右其中一方。 蚂蚁的移…...

使用 Python 构建并调用 ComfyUI 图像生成 API:完整实战指南

快速打造你自己的本地 AI 图像生成服务&#xff0c;支持 Web 前端一键调用&#xff01; &#x1f4cc; 前言 在 AIGC 快速发展的今天&#xff0c;ComfyUI 作为一款模块化、节点式的图像生成界面&#xff0c;备受开发者青睐。但默认情况下&#xff0c;ComfyUI 主要通过界面交互…...

嵌入式学习笔记-freeRTOS taskENTER_CRITICAL(_FROM_ISR)跟taskEXIT_CRITICAL(_FROM_ISR)函数解析

一 函数taskENTER_CRITICAL&#xff0c;taskEXIT_CRITICAL 函数taskENTER_CRITICAL最终实现如下&#xff1a; 第①处按照系统设定的configMAX_SYSCALL_INTERRUPT_PRIORITY值对中断进行屏蔽 第②处调用一次自增一次 第③处检查中断状态寄存器位&#xff0c;如果有任何中断位置…...

Unity基础-数学向量

Unity基础-数学向量 二、向量相关用法 概述 向量在Unity游戏开发中扮演着重要角色&#xff0c;用于表示位置、方向、速度等。Unity提供了Vector2、Vector3等结构体来处理向量运算。 1. 向量基础操作 1.1 向量创建和访问 // 创建向量 Vector3 position new Vector3(1, 2,…...

【华为云Astro-服务编排】服务编排中图元的使用与配置

目录 子服务编排图元 子服务编排图元的作用 如何使用子服务编排图元 脚本图元 脚本图元的作用 如何使用脚本图元 记录创建图元 记录创建图元的作用 如何使用记录创建图元 记录删除图元 记录删除图元的作用 如何使用记录删除图元 记录查询图元 记录查询图元的作用…...

1panel面板中部署SpringBoot和Vue前后端分离系统 【图文教程】

1panel面板中部署SpringBoot和Vue前后端分离系统 一&#xff0c;1panel面板部署二&#xff0c;安装OpenResty三&#xff0c;安装MySQL&#xff0c;Redis等Spring boot 运行依赖环境四&#xff0c;SpringBoot 应用配置及打包部署配置打包部署 五 &#xff0c;前端VUE应用配置打包…...

C++.OpenGL (7/64)摄像机(Camera)

摄像机(Camera) 摄像机系统核心组件 #mermaid-svg-lmysTXAyyzKytiOC {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-lmysTXAyyzKytiOC .error-icon{fill:#552222;}#mermaid-svg-lmysTXAyyzKytiOC .error-text{fi…...

使用xdocreport导出word

之前java总用freemaker进行导出&#xff0c;但是改xml实在是太繁琐了&#xff0c;这次找了另一个工具进行体验. 一、简单导出 pom引入 <dependency><groupId>fr.opensagres.xdocreport</groupId><artifactId>fr.opensagres.xdocreport.core</arti…...

青少年编程与数学 01-011 系统软件简介 05 macOS操作系统

青少年编程与数学 01-011 系统软件简介 05 macOS操作系统 一、历史发展&#xff08;一&#xff09;经典 Mac OS&#xff08;1984-2001&#xff09;&#xff08;二&#xff09;Mac OS X&#xff08;2001-2016&#xff09;&#xff08;三&#xff09;macOS&#xff08;2016-至今&…...

Python打卡训练营学习记录Day43

作业&#xff1a; kaggle找到一个图像数据集&#xff0c;用cnn网络进行训练并且用grad-cam做可视化 进阶&#xff1a;并拆分成多个文件 从谷歌图片中拍摄的 10 种不同类别的动物图片 数据预处理 import os from torchvision import datasets, transforms from torch.utils…...

【Android基础回顾】二:handler消息机制

Android 的 Handler 机制 是 Android 应用中实现线程间通信、任务调度、消息分发的核心机制之一&#xff0c;它基于 消息队列&#xff08;MessageQueue&#xff09; 消息循环&#xff08;Looper&#xff09; 消息处理器&#xff08;Handler&#xff09; 组成。 1 handler的使用…...

每日Prompt:每天上班的状态

提示词 一个穿着清朝官服的僵尸脸上贴着符纸&#xff0c;在电脑面前办公&#xff0c;房间阴暗&#xff0c;电脑桌面很乱&#xff0c;烟灰缸里面满是烟头...

.net ORM框架dapper批量插入

.NET ORM 框架 Dapper 批量插入全解析 在 .NET 开发中&#xff0c;与数据库交互是常见需求。Dapper 作为轻量级的 ORM&#xff08;对象关系映射&#xff09;库&#xff0c;在简化数据库交互方面表现出色。今天我们就来深入探讨 Dapper 实现批量插入的几种方法。 为什么需要批…...

C++11 右值引用:从入门到精通

文章目录 一、引言二、左值和右值&#xff08;一&#xff09;概念&#xff08;二&#xff09;区别和判断方法 三、左值引用和右值引用&#xff08;一&#xff09;左值引用&#xff08;二&#xff09;右值引用 四、移动语义&#xff08;一&#xff09;概念和必要性&#xff08;二…...