eclipse怎樣改編碼格式_Eclipse中各種編碼格式及設置

操作系統:Windows 10(家庭中文版)

Eclipse版本:Version: Oxygen.1a Release (4.7.1a)

剛看到一篇文章,里面介紹說Ascii、Unicode是編碼,而GBK、UTD-8等是編碼格式。

Java中的編碼問題(by?迷失之路):https://www.cnblogs.com/zj0208/p/7019102.html

涉及到下面幾個編碼格式(BMGS):

操作系統(OS)編碼格式、JDK的編碼格式、JVM的編碼格式、Eclipse的編碼格式、工作空間(Workspace)的編碼格式、

項目編碼格式、文本文件編碼格式

1.操作系統BGMS

我的是Windows 10家庭中文版,因此,其BMGS為GBK。

2.JDK的BMGS、JVM的BMGS

JDK的編碼繼承了操作系統的BMGS,因此,安裝好JDK后,其默認BMGS為GBK,同OS。

在沒有特別設置的情況下,JVM啟動時的BMGS和JDK相同,為GBK。不過,可以在JVM啟動時通過命令修改其BMGS。

注意:還需深究

修改JVM的默認BMGS:http://notebookdong.iteye.com/blog/2237550

添加環境變量、JVM啟動時添加參數:這兩種方式在我看來都比較麻煩或影響很大。

更多參考:

更改JDK默認編碼為UTF-8:http://blog.163.com/han_sboy@126/blog/static/2167612420155164539654/

這篇文章介紹的更深入,還沒仔細看。

3.Eclipse的BMGS、Eclipse下Workspace的BMGS

Eclipse的BGMS是一個偽概念,實際上是不存在的,但是,在Eclipse我們可以全局性地設置工程的BMGS,而這個BMGS是指Workspace的。

打開Window->Preferences面板,選中其中的General->Workspace,在此面板的底部有一個Text file encoding配置項,默認是GBK,即運行Eclipse

的JVM的BMGS。

修改這里的BMGS后,即同時修改了此工作空間下所有的工程、文本文件的BMGS,影響很大!

比如,一個Java工程及其下的Java文件的BMGS是GBK,若是在這里修改為UTF-8后,此Java工程及其下的Java文件的BMGS也隨之而改,此時,

之前Java文件中的非ASCII字符則會變為亂碼,嚴重者會導致程序無法運行。

4.項目的BMGS

項目存在于Workspace中,新建項目會繼承(Inherited)Workspace的BMGS,但其BMGS可以單獨設置。

兩個途徑:

a.項目名上右鍵,選擇Properties,進入項目的屬性設置面板,在第一個屬性項Resource的配置項中就可以設置——Text file encoding,

默認是繼承,可以也可以選擇單獨配置;

b.選中項目名稱,選擇Eclipse菜單欄的Project->Properties菜單;

設置為UTF-8;

在這里修改完工程的BMGS后,工程下的文件的BMGS也改變為UTF-8了。

Text file encoding中的Store the encoding of derived resources separately是什么意思呢?

經過試驗,在選中此選項后,在工程的.settings目錄下的org.eclipse.core.resources.prefs文件中會增加下下面一行:

separateDerivedEncodings=true

需要注意的是,org.eclipse.core.resources.prefs文件在沒有修改工程的BMGS是不存在的!

那么,有什么更大的影響呢?和項目遷移有關系嗎?

5.文本文件的BMGS

文本文件可以簡單地理解為各種程序源文件,其BMGS可以單獨修改的,默認是繼承了工程的BMGS。

右鍵進入文件的屬性配置面板,或者,選擇文件后,從菜單File->Properties進入,此面板中也有一個Text file encoding,修改它即可。

6.修改BMGS時的注意事項

a.優先級

Workspace的BMGS?低于?項目的BMGS?低于?文本文件的BMGS

b.覆蓋范圍

Workspace的BMGS?大于?項目的BMGS?大于?文本文件的BMGS

c.文本文件存在非ASCII字符時,更需要謹慎配置各個級別的BMGS

d.為何要設置為UTF-8

一是國際化支持更好、更大程度地支持中文,二是更有利于團隊之間的合作開發。

在我的Windows 10中,默認中文BMGS是GBK,而在Windows XP、2000操作系統中,默認的BMGS為GB18030。

是否將Workspace的BMGS設置為UTF-8?

是否將項目的BMGS設置為UTF-8?

是否將文本文件的BMGS設置為UTF-8?

我的建議是:

設置Eclipse的Workspace的BMGS為UTF-8,再設置工程的BMGS為UTF-8,文本文件的無需單獨設置。

e.項目遷移(需要驗證)

項目在一個Eclipse上是繼承BMGS,為UTF-8。

當其遷移到Workspace的BMGS為GBK的的Eclipse時,是否能成功運行?

注釋是否不變為亂碼?因為其配置為繼承,此時,項目的BMGS將更改為GBK。

f.還有文章提到修改Java Source File的Default?Coding

修改Java Source File這種文件的Default encoding為UTF-8:輸入,更新即可。

g.關于PyDev開發的Python工程的BMGS設置

遵循本文前面講的,需要【單獨設置】工程的BMGS為UTF-8,而工程里面的文件的BMGS則保持默認的繼承。

有些問題:

Python 2的默認編碼是Ascii,而Python 3的是UTF-8,基于不同Python版本建立的工程?怎么設置BMGS呢?

Python 3可以采取上面提到的建議,而Python 2呢?還需要深究。

h.當前Eclipse中的Python File的Default?coding

在File associations中選擇一個項目,再輸入想要的BMGS,保存即可生效。

需要注意的是,

Python 2的默認編碼為Ascii,Python 3的為utf-8,若是項目會在兩者之間切換,可以【在項目中單獨設置、,而不是在這里做全局設置。

參考鏈接-關于Python2.X與Python3.X的編碼問題:https://blog.csdn.net/mickeymouse1928/article/details/70168794

-------

Version 1:2018-04-27

第一個版本,待有更多實踐后,可能會更新此博文。

Eclipse中 *.properties 文件編碼設置

Eclipse 中的默認編碼格式為 ISO-8895-1,在此編碼下中文的會顯示如下的效果 解決方法 Windows --> Preference --> General Types -- ...

eclipse中查看java源代碼設置方法

眾所周知,第一次查看class文件時,eclipse會給個界面選擇添加源代碼路徑. ? 但是,如果我要換源代碼路徑了怎么辦,eclipse也不會提示了.那就使用手動的吧 ? ? ? 方法1: 使用ec ...

eclipse中Preferences的一些設置

1.在Eclipse里面設置了java文件保存時自動格式化,在java->Code Style->Formatter里設置了自定義的格式化的樣式,這樣每次保存后都會自動格式化代碼,用了一段 ...

如何為 Eclipse 中的 Java 源文件設置為 UTF-8 默認編碼(轉)

要讓一個 Java 源文件打開時編碼格式為 UTF-8,需要做2件事情: 1)設置Java 源文件的默認編碼格式為UTF-8: 2)設置workspace的編碼格式為UTF-8. 相應設置如下: 設置 ...

在eclipse中的tomcat內存設置

設置步驟如下: 1.點擊eclipse上的debug圖標旁邊的下拉箭頭 2.然后選擇Run Configurations, 3.系統彈出設置tomcat配置頁面,在Argument中末尾添加參數中的V ...

eclipse中tomcat內存溢出設置

Eclipse里啟動Tomcat,配置內存大小 2009年12月11日 星期五 10:50 一般安裝完eclipse之后,在安裝目錄下你應該可以看到有一個?eclipse.ini?文件,對了,就是在這 ...

eclipse中的字體大小設置和背景色設置

1.字體大小設置 在basic下選擇最后一個TextFont 護眼背景色設置 添加到自定義顏色后點確定 最后一步點apply

設置eclipse中python腳本的編碼格式

今天在運行python腳本時報如下錯誤: SyntaxError: Non-ASCII character '\xe5' in file D:\pythonlearn1\src\day01\direc ...

在Eclipse中設置文件的默認打開方式

在Eclipse中,我們可以設置jsp.xml.js.sql等文件默認打開方式: ①.打開配置選項 ②.找到文件設置 ③.選中我們要設置的文件,默認即可:

隨機推薦

Web Service和WCF的區別。其實二者不屬于一個范疇!!!

Web Service和WCF的區別 [1]Web Service:嚴格來說是行業標準,也就是Web Service 規范. 它有一套完成的規范體系標準,而且在持續不斷的更新完善中. 它使用XML擴展 ...

IoC、DI、AOP

相信學習Java語言的同學都對這三個概念不太陌生.下面用spring的例子簡單說明這三個概念. IoC(Inversion of Control):控制反轉.正常情況(控制未反轉)下,如果servic ...

[水煮 ASP.NET Web API2 方法論](3-4)設置路由可選項

問題 怎么樣創建一個路由,不管客戶端傳不傳這個參數,都可以被成功匹配. 解決方案 ASP.NET WEB API 的集中式路由和屬性路由都支持路由聲明可選參數. 在用集中式路由中可以通過 RouteP ...

Android Studio使用教程(二)

以下是本次Google I/O大會發布的IDE Android Studio使用教程第二篇: 在Android Studio使用教程(一)中簡要介紹了Android Studio的基本使用,包括安裝. ...

Win10開發究竟能實現哪些牛逼的功能

經Win10開發者群(53078485)大咖Aran童鞋授權,這次先Show一下他通過vs2015做的跨端APP一些高級功能的GIF圖,大家可以回帖想要哪個功能的DEMO,我和Aran說一下,會把DE ...

spring cloud教程之使用spring boot創建一個應用

<7天學會spring cloud>第一天,熟悉spring boot,并使用spring boot創建一個應用. Spring Boot是Spring團隊推出的新框架,它所使用的核心技術 ...

Python之路-python環境安裝和簡單的語法使用

一.環境安裝 Win10(安裝python3.x): 1.下載安裝包 ????https://www.python.org/downloads/ ? 2.安裝完成后設置環境變量. 桌面-“計算機”-右 ...

Java設計模式07:常用設計模式之裝飾器模式(結構型模式)

1. Java之裝飾器模式(Decorator?Pattern) (1)概述: ? ? 裝飾模式在Java種使用也很廣泛,比如我們在重新定義按鈕.對話框等時候,實際上已經在使用裝飾模式了.在不必改變原 ...

LINQ實戰

轉載:http://www.cnblogs.com/yubinfeng/p/4567064.html??? 原作者:尼古拉斯~yu 文章部分內容在原文的基礎上有刪改. 我相信在net進階的這個階段,很 ...

基于Sql Server 2008的分布式數據庫的實踐(五)

原文?基于Sql Server 2008的分布式數據庫的實踐(五) 程序設計 ------------------------------------------------------------- ...

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/453871.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/453871.shtml
英文地址,請注明出處:http://en.pswp.cn/news/453871.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

UE4 ShooterGame Demo的開火的代碼

之前一直沒搞懂按下鼠標左鍵開火之后&#xff0c;代碼的邏輯是怎么走的&#xff0c;今天看懂了之前沒看懂的部分&#xff0c;進了一步 ShooterCharacter.cpp void AShooterCharacter::OnStartFire() {AShooterPlayerController* MyPC Cast<AShooterPlayerController>(Co…

kafka 異常:return ‘<SimpleProducer batch=%s>‘ % self.async ^ SyntaxError: invalid syntax

Python3.X 執行Python編寫的生產者和消費者報錯&#xff0c;報錯信息如下&#xff1a; Traceback (most recent call last): File "mykit_kafka_producer.py", line 9, in <module> from kafka import KafkaProducer File "/usr/local/lib/python3.7/sit…

python 分布式計算框架_漫談分布式計算框架

如果問 mapreduce 和 spark 什么關系&#xff0c;或者說有什么共同屬性&#xff0c;你可能會回答他們都是大數據處理引擎。如果問 spark 與 tensorflow 呢&#xff0c;就可能有點迷糊&#xff0c;這倆關注的領域不太一樣啊。但是再問 spark 與 MPI 呢&#xff1f;這個就更遠了。…

Codeforces 899D Shovel Sale

題目大意 給定正整數 $n$&#xff08;$2\le n\le 10^9$&#xff09;。 考慮無序整數對 $(x, y)$&#xff08;$1\le x,y\le n, x\ne y$&#xff09;。 求滿足 「$xy$ 結尾連續的 9 最多」的數對 $(x,y)$ 的個數。 例子&#xff1a; $n50$&#xff0c;$(49,50)$ 是一個滿足條件的…

Windows系統使用minGW+msys 編譯ffmpeg 0.5的全過程詳述

一.環境配置 1.下載并安裝 MinGW-5.1.4.exe (http://jaist.dl.sourceforge.net/sourcef … -5.1.4.exe)&#xff0c;安裝時選中 g, mingw make。建議安裝到c:/mingw. 2.下載并安裝 MSYS-1.0.11-rc-1.exe (http://jaist.dl.sourceforge.net/sourcef … 1-rc-1.exe)&#xff0c;安…

Liunx安裝gogs,mysql,jdk,tomcat等常用軟件

Liunx CentOS系統采用yum安裝Mysql 一.安裝mysql客戶端 yum -y install mysql 二.安裝mysql服務器端 [注意:由于CentOS7下的不自帶mysql-server,所以得先安裝資源包,步驟: 1.wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm (采用wget獲取必須有wge…

stm32單片機端口映射_STM32單片機的重映射與地址映射的使用方法及步驟

重映射STM32中對于一些端口的外設已經被其他引腳所使用&#xff0c;這是就需要用端口重映射來解決了&#xff0c;很方便。以USART1為例重映射的步驟為&#xff1a;打開重映射時鐘和USART重映射后的I/O口引腳時鐘&#xff0c;RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB|RCC_A…

python 第三方模塊 yaml - 處理 YAML (專門用來寫配置文件的語言)

markdown 的配置使用 Yaml —— Yet Another Markup Language &#xff1a;另一種標記語言。 簡介 YAML 是專門用來寫配置文件的語言&#xff0c;非常簡潔和強大&#xff0c;遠比 JSON 格式方便。 YAML在python語言中有PyYAML安裝包。 YAML 語言&#xff08;發音 /?jm?l/ &…

程序員 賺錢

業余編程賺錢 程序員的好方法 現在的人生活水平高了&#xff0c;開銷也大了&#xff0c;同時對于一些技術性人員來說有很多種&#xff0c;有些程序員自己開公司&#xff0c;開發自己的產品&#xff0c;年賺百萬&#xff0c;有些程序員還在給別人打工&#xff0c;每天累死累活的…

java合并單元格的快捷鍵_java poi合并單元格問題

使用poi導出的execl合并單元格&#xff0c;會出現下圖問題整個單元格看似合并了&#xff0c;但是文字沒有垂直居中&#xff0c;而且execl中所有的合并都會在第三行開始出現灰色分層樣式合并單元格偽代碼String upCompareField ""; //上一行的對比值for(int i 0; i …

webpack自動化構建腳本指令npm run dev/build

指令 為不同環境配置可執行指令&#xff0c;我們使用npm scripts方式&#xff0c;在package.json文件中配置執行指令&#xff1a; {"scripts": {"start": "cross-env NODE_ENVdev webpack-dev-server","build": "cross-env NODE_…

前端之 form 詳解

認識表單 在一個頁面上可以有多個form表單&#xff0c;但是向web服務器提交表單的時候&#xff0c;一次只可以提交一個表單。要聲明一個表單&#xff0c;只需要使用 form 標記來標明表單的開始和結束&#xff0c;若需要向服務器提交數據&#xff0c;則在form標簽中需要設置act…

代碼 優化 指南 實踐

C代碼優化方案 華中科技大學計算機學院 姓名&#xff1a; 王全明 QQ&#xff1a; 375288012 Email&#xff1a; quanming1119163.com 目錄 目錄 C代碼優化方案 1、選擇合適的算法和數據結構 2、使用盡量小的數據類型 3、減少運算的強度 &#xff08;1&…

.12-淺析webpack源碼之NodeWatchFileSystem模塊總覽

剩下一個watch模塊&#xff0c;這個模塊比較深&#xff0c;先大概過一下整體涉及內容再分部講解。 流程圖如下&#xff1a; NodeWatchFileSystem const Watchpack require("watchpack");class NodeWatchFileSystem {constructor(inputFileSystem) {this.inputFileSy…

Python 第三方模塊之 beautifulsoup(bs4)- 解析 HTML

簡單來說&#xff0c;Beautiful Soup是python的一個庫&#xff0c;最主要的功能是從網頁抓取數據。官方解釋如下&#xff1a;官網文檔 Beautiful Soup提供一些簡單的、python式的函數用來處理導航、搜索、修改分析樹等功能。 它是一個工具箱&#xff0c;通過解析文檔為用戶提供…

modal vue 關閉_Vue彈出框的優雅實踐

引言頁面引用彈出框組件是經常碰見的需求,如果強行將彈出框組件放入到頁面中,雖然功能上奏效但沒有實現組件與頁面間的解耦,非常不利于后期的維護和功能的擴展.下面舉個例子來說明一下這種做法的弊端.click"openModal()">點擊 :is_open"is_open" close…

Python 第三方模塊之 lxml - 解析 HTML 和 XML 文件

lxml是python的一個解析庫&#xff0c;支持HTML和XML的解析&#xff0c;支持XPath解析方式&#xff0c;而且解析效率非常高 XPath&#xff0c;全稱XML Path Language&#xff0c;即XML路徑語言&#xff0c;它是一門在XML文檔中查找信息的語言&#xff0c;它最初是用來搜尋XML文…

(轉)Linux下PS1、PS2、PS3、PS4使用詳解

Linux下PS1、PS2、PS3、PS4使用詳解 原文&#xff1a;http://www.linuxidc.com/Linux/2016-10/136597.htm 1、PS1——默認提示符 如下所示&#xff0c;可以通過修改Linux下的默認提示符&#xff0c;使其更加實用。在下面的例子中&#xff0c;默認的PS1的值是“\s-\v\$”,顯示出…

開放平臺大抉擇

開放平臺大抉擇之新浪SAE&#xff1a;為個人應用開發帶來福音 導讀&#xff1a;繼上期淘寶網副總裁王文彬從平臺功能特色、運營狀況等多方面分享了淘寶開放平臺的歷程和挑戰之后。國內另一家云平臺服務方的典型代表——Sina App Engine(簡稱SAE)&#xff0c;作為新浪研發中心于…

ip68級防水可以泡多久_iPhone8防水級別升級至IP68:能在1.5米深水中堅持30分鐘

1月15日&#xff0c;業界最新的泄密消息顯示&#xff0c;蘋果擬在今年推出的“iPhone 8”智能手機會是一款革命性的手機&#xff0c;功能和配置就不多說了。蘋果還將解決iPhone 7的一個重要缺陷&#xff0c;就是大大增強iPhone 8的防水性能&#xff0c;防水級別達IP68。《韓國先…