国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【Java】在代碼中設(shè)置輸出字符集為UTF-8

這篇具有很好參考價(jià)值的文章主要介紹了【Java】在代碼中設(shè)置輸出字符集為UTF-8。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

今日無聊,來試試如何在 Java 代碼中更改輸出字符集。

一行代碼設(shè)置輸出字符集為UTF-8

import java.io.PrintStream;
import java.nio.charset.StandardCharsets;
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        System.setOut(new PrintStream(System.out, true, StandardCharsets.UTF_8));
        System.out.println("Hello world!");
        System.out.println("請輸入年份:");
        int year;
        year = new Scanner(System.in).nextInt();
        boolean isLeapYear = isLeapYear(year);
        System.out.println(isLeapYear);
    }

    /**
     * @param year 年份
     * @return 是否是閏年
     */
    static boolean isLeapYear(int year){
        if(year % 4 == 0 && year % 100 != 0){
            return true;
        }else return year % 400 == 0;
    }
}

其中我們要看的語句,其實(shí)只有一行

System.setOut(new PrintStream(System.out, true, StandardCharsets.UTF_8));

在設(shè)置Java程序的輸出字符集為UTF-8。

System.setOut 是 Java標(biāo)準(zhǔn)庫 中的一個(gè)靜態(tài)方法,用于設(shè)置標(biāo)準(zhǔn)輸出流。標(biāo)準(zhǔn)輸出流是程序輸出信息的默認(rèn)位置,通常是控制臺。

new PrintStream(System.out, true, StandardCharsets.UTF_8)創(chuàng)建了一個(gè)新的PrintStream對象。這個(gè)對象的構(gòu)造函數(shù)接受三個(gè)參數(shù):

  • System.out 表示這個(gè)流將要輸出到控制臺。
  • true 表示開啟自動(dòng)刷新,即在輸出后立即刷新緩沖區(qū)。
  • StandardCharsets.UTF_8表示使用UTF-8字符集編碼輸出的字符。

總之,這一行代碼的作用是將程序的輸出字符集設(shè)置為UTF-8,使得程序能正確輸出中文字符。


除此之外沒有別的辦法了嗎?

答案當(dāng)然是:有的。


其他辦法

  1. 命令行中使用JVM參數(shù):
    可以在運(yùn)行Java程序時(shí),在命令行上使用
    -Dfile.encoding=UTF-8來設(shè)置程序的輸出字符集。
java -Dfile.encoding=UTF-8 Main
  1. 通過環(huán)境變量設(shè)置:
    可以在運(yùn)行程序之前設(shè)置環(huán)境變量file.encoding的值為UTF-8, 例如在linux中:
export file.encoding=UTF-8
java main

或者在windows中:

set file.encoding=UTF-8
java Main
  1. 設(shè)置編碼格式:
    你可以在程序中使用 -encoding UTF-8 選項(xiàng)來告訴編譯器使用 UTF-8 編碼格式來編譯你的代碼。例如:
javac -encoding UTF-8 Main.java

這樣編譯后的字節(jié)碼文件就會(huì)使用UTF-8編碼格式。


以后遇到中文亂碼就不用怕啦,如果遇到了中文亂碼問題,可以使用上述方法來解決。設(shè)置程序的輸出字符集為UTF-8可以確保程序能正確輸出中文字符。

另外,還有一些其他的解決中文亂碼問題的方法,比如在文件頭部添加UTF-8編碼聲明,或者在文本編輯器中打開文件時(shí)選擇UTF-8編碼。

關(guān)注默子,無限進(jìn)步!文章來源地址http://www.zghlxwxcb.cn/news/detail-456096.html

到了這里,關(guān)于【Java】在代碼中設(shè)置輸出字符集為UTF-8的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • VScode中怎么設(shè)置默認(rèn)字符集編碼

    VScode中怎么設(shè)置默認(rèn)字符集編碼

    《AUTOSAR譜系分解(ETAS工具鏈)》之總目錄

    2024年02月03日
    瀏覽(36)
  • Mysql之安裝-字符集設(shè)置-用戶及權(quán)限操作-sqlmode設(shè)置

    MySQL支持大型數(shù)據(jù)庫,支持5000萬條記錄的數(shù)據(jù)倉庫,32位系統(tǒng)表文件最大可支持4GB,64位系統(tǒng)支持最大的表文件為8TB。使用標(biāo)準(zhǔn)的SQL數(shù)據(jù)語言形式。 (1)檢查是否已安裝:rpm -qa|grep mysql (2)卸載命令:rpm -e --nodeps mysql-libs (3)給/tmp賦權(quán):chmod -R 777 /tmp (4)rpm安裝:rpm -iv

    2024年02月13日
    瀏覽(30)
  • 設(shè)置Tomcat字符編碼UTF-8

    設(shè)置Tomcat字符編碼UTF-8

    我這里是Tomcat7,標(biāo)簽大概在70行左右

    2024年02月16日
    瀏覽(21)
  • GBASE南大通用數(shù)據(jù)庫GBase 8s常見問題講堂 -- 字符集的設(shè)置

    本文摘自GBASE南大通用社區(qū),by:wty,原文請點(diǎn)擊:GBase 8s常見問題 -- 字符集相關(guān)問題|GBASE社區(qū)|天津南大通用數(shù)據(jù)技術(shù)股份有限公司|GBASE-致力于成為用戶最信賴的數(shù)據(jù)庫產(chǎn)品供應(yīng)商 23103 ? Code-set conversion function failed due to an illegal sequence or invalid value. 字符集轉(zhuǎn)換失敗,字符串中

    2024年01月24日
    瀏覽(22)
  • 高階JAVA篇-深入了解字符集

    高階JAVA篇-深入了解字符集

    ??博客主頁:? 小扳_-CSDN博客 ?感謝大家點(diǎn)贊??收藏?評論? ? ? 文章目錄 ???????1.0 字符集的說明 ? ? ? ? 1.1 ASCII? 字符集 ? ? ? ? 1.2?GBK 字符集 ? ? ? ? 1.3?UTF-8字符集 ? ? ? ? 2.0 字符集的編碼與解碼 ? ? ? ? 2.1 編碼提供了常見的方法 ? ? ? ? 2.2 解碼提供了常

    2024年02月06日
    瀏覽(19)
  • Java基礎(chǔ)——IO流之字符集

    (1)IO前置內(nèi)容:字符集 1.字符集基礎(chǔ)知識: 計(jì)算機(jī)底層不可以直接存儲字符,只能存儲二進(jìn)制(0,1)。 二進(jìn)制可以轉(zhuǎn)換成十進(jìn)制。 計(jì)算機(jī)底層可以表示十進(jìn)制編號。計(jì)算機(jī)可給人類字符進(jìn)行編號存儲,這套編號規(guī)則就是字符集。 2.ASCII字符集:(1字節(jié)) ASCII(American S

    2023年04月17日
    瀏覽(24)
  • 華為OD機(jī)試之全量和已占用字符集(Java源碼)

    華為OD機(jī)試之全量和已占用字符集(Java源碼)

    題目描述 給定兩個(gè)字符集合,一個(gè)是全量字符集,一個(gè)是已占用字符集,已占用字符集中的字符不能再使用。 輸入描述 輸入一個(gè)字符串 一定包含@,@前為全量字符集 @后的為已占用字符集 已占用字符集中的字符一定是全量字符集中的字符 字符集中的字符跟字符之間使用英文

    2024年02月07日
    瀏覽(21)
  • 【華為OD機(jī)考 統(tǒng)一考試機(jī)試C卷】 全量和已占用字符集 、字符串統(tǒng)計(jì)(C++ Java JavaScript Python)

    2023年11月份,華為官方已經(jīng)將 華為OD機(jī)考:OD統(tǒng)一考試(A卷 / B卷)切換到 OD統(tǒng)一考試(C卷)和 OD統(tǒng)一考試(D卷) 。根據(jù)考友反饋:目前抽到的試卷為B卷或C卷/D卷,其中C卷居多 ,按照之前的經(jīng)驗(yàn)C卷部分考題會(huì)復(fù)用A卷,B卷題,博主正積極從考過的同學(xué)收集C卷和D卷真題。

    2024年02月05日
    瀏覽(25)
  • Java 字符轉(zhuǎn)碼之UTF-8互轉(zhuǎn)GBK

    Java UTF-8轉(zhuǎn)GBK詳解 java跟python類似的做法,在java中字符串的編碼是java修改過的一種Unicode編碼,所以看到j(luò)ava中的字符串,心理要默念這個(gè)東西是java修改過的一種Unicode編碼的編碼。 ?問題的關(guān)鍵是new String(xxx.getBytes(\\\"gbk\\\"), \\\"gbk\\\")這句話是什么意思,xxx.getBytes(\\\"gbk\\\")得到的數(shù)組編碼是

    2024年02月05日
    瀏覽(12)
  • 【華為OD機(jī)試】全量和已占用字符集(python, java, c++, js)

    前言 :本專欄將持續(xù)更新華為OD機(jī)試題目,并進(jìn)行詳細(xì)的分析與解答,包含完整的代碼實(shí)現(xiàn),希望可以幫助到正在努力的你。關(guān)于OD機(jī)試流程、面經(jīng)、面試指導(dǎo)等,如有任何疑問,歡迎聯(lián)系我,wechat:steven_moda;email:nansun0903@163.com;備注:CSDN。 給定兩個(gè)字符集合,一個(gè)為全

    2024年02月11日
    瀏覽(22)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包