|
@@ -1,14 +1,20 @@
|
|
|
package main
|
|
|
|
|
|
import (
|
|
|
+ "encoding/json"
|
|
|
"fmt"
|
|
|
"github.com/tealeg/xlsx"
|
|
|
"strings"
|
|
|
)
|
|
|
|
|
|
-var origin_file = "C:\\Users\\tangs\\Desktop\\表1_教师招聘_国考合并_替换代码\\表2_招聘3-20180204145207_接受替换.xlsx"
|
|
|
-var reference_file = "C:\\Users\\tangs\\Desktop\\表1_教师招聘_国考合并_替换代码\\表1_教师招聘_国考合并_替换代码.xlsx"
|
|
|
-var result_file = "./result.xlsx"
|
|
|
+//
|
|
|
+var origin_file = "C:\\Users\\tangs\\Desktop\\表1_教师招聘_国考合并_替换代码2\\表2_国考_20190322192526接受替换.xlsx"
|
|
|
+var reference_file = "C:\\Users\\tangs\\Desktop\\表1_教师招聘_国考合并_替换代码2\\表1_国考_代号转换表.xlsx"
|
|
|
+var result_file = "./result2.xlsx"
|
|
|
+
|
|
|
+//var origin_file = "C:\\Users\\tangs\\Desktop\\表1_教师招聘_国考合并_替换代码\\表2_招聘3-20180204145207_接受替换.xlsx"
|
|
|
+//var reference_file = "C:\\Users\\tangs\\Desktop\\表1_教师招聘_国考合并_替换代码\\表1_教师招聘_国考合并_替换代码.xlsx"
|
|
|
+//var result_file = "./result.xlsx"
|
|
|
|
|
|
func compose_reference_file(reference_file string) map[string]map[string]string {
|
|
|
r_f, err := xlsx.OpenFile(reference_file)
|
|
@@ -49,10 +55,42 @@ func compose_reference_file(reference_file string) map[string]map[string]string
|
|
|
return result
|
|
|
}
|
|
|
|
|
|
+func compose_reference_file2(reference_file string) map[string]string {
|
|
|
+ o_f, err := xlsx.OpenFile(reference_file)
|
|
|
+ if err != nil {
|
|
|
+ panic(err)
|
|
|
+ }
|
|
|
+ sheet := o_f.Sheets[0]
|
|
|
+ var result = map[string]string{}
|
|
|
+ for row_index, row := range sheet.Rows {
|
|
|
+ if row_index == 0 {
|
|
|
+ continue
|
|
|
+ }
|
|
|
+ var key = ""
|
|
|
+ //fmt.Println("first", row.Cells[0].Value, row.Cells[1].Value)
|
|
|
+ for cell_index, cell := range row.Cells {
|
|
|
+ value := strings.TrimSpace(cell.Value)
|
|
|
+ if cell_index == 0 {
|
|
|
+ fmt.Println("key ---- " + value)
|
|
|
+ key = value
|
|
|
+ continue
|
|
|
+ }
|
|
|
+ if cell_index == 1 {
|
|
|
+ fmt.Println("keeeey --- " + key + " --- " + value)
|
|
|
+ result[key] = value
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return result
|
|
|
+}
|
|
|
+
|
|
|
func swap(origin_file, reference_file string) {
|
|
|
|
|
|
//
|
|
|
- reference := compose_reference_file(reference_file)
|
|
|
+ //reference := compose_reference_file(reference_file)
|
|
|
+ reference := compose_reference_file2(reference_file)
|
|
|
+ bys, _ := json.Marshal(reference)
|
|
|
+ fmt.Println(string(bys))
|
|
|
|
|
|
o_f, err := xlsx.OpenFile(origin_file)
|
|
|
if err != nil {
|
|
@@ -72,8 +110,11 @@ func swap(origin_file, reference_file string) {
|
|
|
value := strings.TrimSpace(cell.Value)
|
|
|
value = strings.Replace(value, "—", "-", -1)
|
|
|
value = strings.Replace(value, ",", ",", -1)
|
|
|
- new_value := real_swap(value, reference, true)
|
|
|
- new_value = real_swap(new_value, reference, false)
|
|
|
+ new_value := value
|
|
|
+ //new_value = real_swap(value, reference, true)
|
|
|
+ //new_value = real_swap(new_value, reference, false)
|
|
|
+ new_value = real_swap2(value, reference)
|
|
|
+ fmt.Println(new_value)
|
|
|
cell.Value = new_value
|
|
|
}
|
|
|
}
|
|
@@ -84,6 +125,20 @@ func swap(origin_file, reference_file string) {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+func real_swap2(value string, reference map[string]string) string {
|
|
|
+ multi := strings.Split(value, ",")
|
|
|
+ temp_value := ""
|
|
|
+ for _, single_value := range multi {
|
|
|
+ ref, ok := reference[single_value]
|
|
|
+ if !ok {
|
|
|
+ temp_value = temp_value + single_value + ","
|
|
|
+ continue
|
|
|
+ }
|
|
|
+ temp_value = temp_value + ref + ","
|
|
|
+ }
|
|
|
+ return strings.TrimSuffix(temp_value, ",")
|
|
|
+}
|
|
|
+
|
|
|
func real_swap(value string, reference map[string]map[string]string, is_log bool) string {
|
|
|
multi := strings.Split(value, ",")
|
|
|
swap_value := value
|