2013年9月7日 星期六
2013年9月6日 星期五
Ubuntu 修改hostname
你可以透過修改 /etc/hostname 與 /etc/hosts 檔案來修改 Ubuntu 主機名稱,步驟如下:
1. 開啟 terminal 視窗
2. sudo gedit /etc/hostname &
然後修改你要的名稱, ex: abc
3. sudo gedit /etc/hosts &
修改第二行,你應該會看到 [127.0.1.1 你原本的Hostname],將原本的Hostname 改為新的 abc。
更改此檔的目的在於避免一些網路的 service 會不正常 ex: Apache、Tomcat...etc.
4. 重新開機即可。
另外你也可以透過 hostname 來查看你目前的主機名稱與暫時修改主機名稱(重新開機後名稱又會變回去原本的)。
如果不想重新開機,你可以下達下面的指令來暫時更改主機名稱:
hostname <新名稱>
ex: hostname abc
參考資料:
Ubuntu: How to Change the Computer Name
How do I change the hostname without a restart?
1. 開啟 terminal 視窗
2. sudo gedit /etc/hostname &
然後修改你要的名稱, ex: abc
3. sudo gedit /etc/hosts &
修改第二行,你應該會看到 [127.0.1.1 你原本的Hostname],將原本的Hostname 改為新的 abc。
更改此檔的目的在於避免一些網路的 service 會不正常 ex: Apache、Tomcat...etc.
4. 重新開機即可。
另外你也可以透過 hostname 來查看你目前的主機名稱與暫時修改主機名稱(重新開機後名稱又會變回去原本的)。
如果不想重新開機,你可以下達下面的指令來暫時更改主機名稱:
hostname <新名稱>
ex: hostname abc
參考資料:
Ubuntu: How to Change the Computer Name
How do I change the hostname without a restart?
Java Boolean getBoolean 總是回傳 false?
之前試了 getBoolean 方法想要將字串轉成 boolean 型態,但是傳了 "true"、"True"、"TRUE" 最後的結果總是 false,用了google 查了一下,原來要使用 getBoolean 你必須設定 System 的 properties。 其實在 Java Doc 已經有提及到了,敘述如下:
Returns true if and only if the system property named by the argument exists and is equal to the string "true".
If there is no property with the specified name, or if the specified name is empty or null, then false is returned.
首先你可以透過 System.getProperties() 來取的目前執行你程式的一些系統參數設定,它主要是以 <key>=<value> 的形式顯示出來,所以當你要查詢某一個屬性值時,你可以透過 System.getProperty("key") 的方式得到 其對應的 value 值,如果該 key 不存在則回傳 null。
另外除了透過 getBoolean 可以轉換成 基本型態的 boolean 值外,我們還可以透過 Boolean.valueOf(String s) 的方式轉換成 boolean的 Wrapper class型態。但 Boolean.valueOf(String s) 方法回傳 true 只有當字串為 "true"(大小寫無關) 時,其餘都回傳 false。
我們可以透過 setProperty 來設定額外的系統參數,其設定型態也是 key/value的方式 ,setProperty ("key", "value"),除了設定 System.setProperty("TRUE", "TRUE"); 來讓 Boloean.getBoolean("TRUE") 來回傳 true ,我們也可以設定讓 Boloean.getBoolean("YES")也可以回傳 true 的值。
範例程式:
System.getProperty("true") = null
System.getProperty("TRUE") = null
System.getProperty("True") = null
Boolean.getBoolean("true") = false
Boolean.getBoolean("TRUE") = false
Boolean.valueOf("true") = true
Boolean.valueOf("TRUE") = true
Boolean.getBoolean("TRUE") = true
Boolean.getBoolean("YES") = true
Boolean.getBoolean("yes") = false
Boolean.getBoolean("YES") = false
另外我在 Boolean.parseBoolean(“1”) = false…? 此篇討論文章,看到有人提供自己自製的方法來設定那些字串要回傳 true。 程式碼如下:
參考資料:
getBoolean(String str) and valueOf(String str) of Boolean class gives different output
有關 Boolean 的方法使用?
Boolean.parseBoolean(“1”) = false…?
Returns true if and only if the system property named by the argument exists and is equal to the string "true".
If there is no property with the specified name, or if the specified name is empty or null, then false is returned.
首先你可以透過 System.getProperties() 來取的目前執行你程式的一些系統參數設定,它主要是以 <key>=<value> 的形式顯示出來,所以當你要查詢某一個屬性值時,你可以透過 System.getProperty("key") 的方式得到 其對應的 value 值,如果該 key 不存在則回傳 null。
另外除了透過 getBoolean 可以轉換成 基本型態的 boolean 值外,我們還可以透過 Boolean.valueOf(String s) 的方式轉換成 boolean的 Wrapper class型態。但 Boolean.valueOf(String s) 方法回傳 true 只有當字串為 "true"(大小寫無關) 時,其餘都回傳 false。
我們可以透過 setProperty 來設定額外的系統參數,其設定型態也是 key/value的方式 ,setProperty ("key", "value"),除了設定 System.setProperty("TRUE", "TRUE"); 來讓 Boloean.getBoolean("TRUE") 來回傳 true ,我們也可以設定讓 Boloean.getBoolean("YES")也可以回傳 true 的值。
範例程式:
public class BooleanDemo {
public static void main(String[] args) {
System.out.println(System.getProperties());
System.out.println("======================================");
System.out.println(System.getProperty("java.runtime.name"));
System.out.println("System.getProperty(\"true\") = " + System.getProperty("true"));
System.out.println("System.getProperty(\"TRUE\") = " + System.getProperty("TRUE"));
System.out.println("System.getProperty(\"True\") = " + System.getProperty("True"));
System.out.println("Boolean.getBoolean(\"true\") = " + Boolean.getBoolean("true"));
System.out.println("Boolean.getBoolean(\"TRUE\") = " + Boolean.getBoolean("TRUE"));
System.out.println("Boolean.valueOf(\"true\") = " + Boolean.valueOf("true"));
System.out.println("Boolean.valueOf(\"TRUE\") = " + Boolean.valueOf("TRUE"));
System.setProperty("TRUE", "TRUE");
System.setProperty("YES", "True");
System.out.println("Boolean.getBoolean(\"TRUE\") = " + Boolean.getBoolean("TRUE"));
System.out.println("Boolean.getBoolean(\"YES\") = " + Boolean.getBoolean("YES"));
System.out.println("Boolean.getBoolean(\"yes\") = " + Boolean.getBoolean("yes"));
System.clearProperty("YES");
System.out.println("Boolean.getBoolean(\"YES\") = " + Boolean.getBoolean("YES"));
}
}
輸出結果:
{java.runtime.name=Java(TM) SE Runtime Environment, sun.boot.library.path=C:\Program Files\Java\jre7\bin, java.vm.version=23.25-b01, java.vm.vendor=Oracle Corporation, java.vendor.url=http://java.oracle.com/, path.separator=;, java.vm.name=Java HotSpot(TM) Client VM, file.encoding.pkg=sun.io, user.country=TW, user.script=, sun.java.launcher=SUN_STANDARD, sun.os.patch.level=Service Pack 3, java.vm.specification.name=Java Virtual Machine Specification, user.dir=C:\Documents and Settings\Josh\JavaCode\BooleanDemo, java.runtime.version=1.7.0_25-b17, java.awt.graphicsenv=sun.awt.Win32GraphicsEnvironment, java.endorsed.dirs=C:\Program Files\Java\jre7\lib\endorsed, os.arch=x86, java.io.tmpdir=R:\TEMP\, line.separator=
, java.vm.specification.vendor=Oracle Corporation, user.variant=, os.name=Windows XP, sun.jnu.encoding=MS950, java.library.path=C:\Program Files\Java\jre7\bin;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;C:/Program Files/Java/jre7/bin/client;C:/Program Files/Java/jre7/bin;C:/Program Files/Java/jre7/lib/i386;C:\Ruby200\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program Files\Microsoft SQL Server\90\Tools\binn\;C:\Program Files\Perforce;C:\Program Files\Java\jdk1.7.0_07\bin;C:\Program Files\Android\android-sdk\tools;C:\Program Files\Android\android-sdk\platform-tools;C:\Program Files\apache-ant-1.9.1\bin;C:\Program Files\Perforce\Server;C:\Program Files\eclipse-SDK-4.2-win32;;., java.specification.name=Java Platform API Specification, java.class.version=51.0, sun.management.compiler=HotSpot Client Compiler, os.version=5.1, user.home=C:\Documents and Settings\Josh, user.timezone=, java.awt.printerjob=sun.awt.windows.WPrinterJob, file.encoding=UTF-8, java.specification.version=1.7, java.class.path=C:\Documents and Settings\Josh\JavaCode\BooleanDemo\bin, user.name=Josh, java.vm.specification.version=1.7, sun.java.command=BooleanDemo, java.home=C:\Program Files\Java\jre7, sun.arch.data.model=32, user.language=zh, java.specification.vendor=Oracle Corporation, awt.toolkit=sun.awt.windows.WToolkit, java.vm.info=mixed mode, sharing, java.version=1.7.0_25, java.ext.dirs=C:\Program Files\Java\jre7\lib\ext;C:\WINDOWS\Sun\Java\lib\ext, sun.boot.class.path=C:\Program Files\Java\jre7\lib\resources.jar;C:\Program Files\Java\jre7\lib\rt.jar;C:\Program Files\Java\jre7\lib\sunrsasign.jar;C:\Program Files\Java\jre7\lib\jsse.jar;C:\Program Files\Java\jre7\lib\jce.jar;C:\Program Files\Java\jre7\lib\charsets.jar;C:\Program Files\Java\jre7\lib\jfr.jar;C:\Program Files\Java\jre7\classes, java.vendor=Oracle Corporation, file.separator=\, java.vendor.url.bug=http://bugreport.sun.com/bugreport/, sun.io.unicode.encoding=UnicodeLittle, sun.cpu.endian=little, sun.desktop=windows, sun.cpu.isalist=pentium_pro+mmx pentium_pro pentium+mmx pentium i486 i386 i86}
======================================
Java(TM) SE Runtime EnvironmentSystem.getProperty("true") = null
System.getProperty("TRUE") = null
System.getProperty("True") = null
Boolean.getBoolean("true") = false
Boolean.getBoolean("TRUE") = false
Boolean.valueOf("true") = true
Boolean.valueOf("TRUE") = true
Boolean.getBoolean("TRUE") = true
Boolean.getBoolean("YES") = true
Boolean.getBoolean("yes") = false
Boolean.getBoolean("YES") = false
另外我在 Boolean.parseBoolean(“1”) = false…? 此篇討論文章,看到有人提供自己自製的方法來設定那些字串要回傳 true。 程式碼如下:
private boolean convertToBoolean(String value) {
if ("1".equalsIgnoreCase(value) ||
"yes".equalsIgnoreCase(value) ||
"true".equalsIgnoreCase(value)||
"on".equalsIgnoreCase(value))
return true;
return false;
}
參考資料:
getBoolean(String str) and valueOf(String str) of Boolean class gives different output
有關 Boolean 的方法使用?
Boolean.parseBoolean(“1”) = false…?
2013年8月31日 星期六
2013年8月29日 星期四
2013年8月16日 星期五
2013年7月24日 星期三
error: Error: No resource type specified (at 'text' with value '@').
今天要在 android:text 中填入 '@' 字元時 , 在編譯的時候出現這個錯過訊息訊息, 解決這問題就是在前面填入反斜線 ' \ ' 就解決問題了. android:text="\@123". :)
出現這個錯誤訊息是因為 @ 在 android xml 中是有意義的
Refer to:
http://stackoverflow.com/questions/8753431/at-the-beginning-of-edittext-value
出現這個錯誤訊息是因為 @ 在 android xml 中是有意義的
Refer to:
http://stackoverflow.com/questions/8753431/at-the-beginning-of-edittext-value
訂閱:
文章 (Atom)