利用os包寫檔案
使用strconv進行型別的強轉
空inte***ce即inte***ce與強轉換
獲取機器物理引數
匯入包go執行shell命令
go get "github.com/dlintw/goconf" --讀取二級標題資料
go get "github.com/larspensjo/config" --讀取一級標題資料,可相容上個包
import (
"其他包"
)
//此函式預設將配置檔案當做字串讀取,型別轉換需要在函式外部自己實現
func read_conf_log_file(name string, name1 string) (inte***ce{}, error)
//呼叫函式 傳入引數應為配置檔案的一級標題和二級標題名
log_size_warn, err := read_conf_log_file("log_file_size_warn", "size")
配置檔案如下:
[mem]
mem_warn=10
[cpu]
cpu_warn=30
[disk]
disk_warn=10
[speed]
speed_warn=10
net_card=eth0
[log_file_size_warn]
size=10
[log]
log_path=/path/to/gotest/src/test_main/iwatch/1.conf
log_path2=/path/to/gotest/src/test_main/iwatch/2.conf
log_path3=/path/to/gotest/src/test_main/iwatch/3.conf
...
/*
該函式可一次直接讀取一級標題下的二級標題
再通過range方法迭代獲得二級標題對應的每乙個資料
最後將以map[key1,:value1, key2:value2...]型別返回給外部
key:二級標題 value:二級標題對應的資料
*/func read_conf_log_file_map() (map[string]string, error)
//set config file std end
var log_file_map = make(map[string]string)
//initialized topic from the configuration
if cfg.hassection("log") }}
}//返回的map為map[string]string型別的
return log_file_map, err
}//呼叫函式
log_file_map, err := read_conf_log_file_map()
for k, log_path := range log_file_map
//主要給檔案尾部追加資料
func write_conf()
checkerr(err)
defer file.close()
//n, _ := file.seek(0, os.seek_set)
//fi, _ := file.stat() // 獲取檔案資訊
n, _ := file.seek(0, os.seek_end)
//0:代表偏移量,負數代表向前偏移
//seek_set,seek_cur和seek_end值 依次 為 0, 1和 2
//代表檔案頭,當前位置,檔案尾部
file.writeat(byte("hello golang test\n"), n)
//指定偏移量來寫檔案,這裡為檔案尾部
}
os還有對流的操作,如writer和reader。需要看一看
var ai int32 = strconv.atoi("123") --string型別轉int32
var astr string = strconv.itoa(123) --int32型別轉string
更多用法見下:
##浮點數與字串互轉
##將「帶引號的字串」 s 轉換為常規的字串(不帶引號和轉義字元)
… strconv包 用法
強型別轉換:一定要用括號擴住需轉換的資料
var a int = 10
var b int64 = int64(a)
//利用inte***ce{}j接收各種不同型別資料
//返回不同型別的資料
func test(data inte***ce{}) inte***ce{}
//呼叫函式
//主要獲取了上下行速率,cpu使用率,記憶體使用率,磁碟使用率
//通過傳入想執行的命令即可
//返回執行的結果
func exec_shell(s string) (string, error)
最近遇到的問題總結!
今天是實習的第6天,這兩天用以前的知識做了個基本的增刪查改小頁面,在這裡總結下遇到的未解決的問題.1.建立專案不能建立linq類 vs2010版建立 用linq是沒問題的,但是建立專案時,步驟跟建立 時一樣,但是建立出來的linq竟然不能用?識別不了我建立的那個類,而2012版沒有這問題,看來以後還...
最近遇到的問題,總結一哈
將list型別轉換成string型別,for string ordercodes orders 超出文字框的區域自動換行 debug是不進入除錯狀態 js的ajax位址url傳參的格式不正確 xml檔案寫的時候注意 和大於號,小於號的區別 用轉義字元轉換 controller入參時,用hashmap...
最近專案遇到問題總結
1 ios彈窗輸入框,關閉後,頁面頂上去不恢復的問題 解決方法 function temporaryrepair let currentposition const speed 1 頁面滾動距離 currentposition document.documentelement.scrolltop d...