1. 程式人生 > >foxmail 批量匯入收件人郵箱資訊

foxmail 批量匯入收件人郵箱資訊

問題產生的背景:
用foxmail發郵件時,填寫收件人,每次輸入別人的郵箱時要換成英文輸入,有時還要得判斷是不是我想找的那個人,確實麻煩。怎樣將一份別人發過來的郵件中的收件人資訊一次性全匯入foxmail呢?
foxmail郵箱的聯絡人可用csv檔案批量匯入。

首先,在foxmai收件箱中找到文員的來信(他們通常會給很多人傳送郵件),然後將聯絡人複製到一份txt檔案中。比如:


copy:



然後處理這份cin.txt資料檔案。
在vim編輯器中處理它,變成有規律的多行資料記錄檔案。
利用regular expression替換功能:
%s/<\([
[email protected]
]*\)>, /^I\1^M/g
[email protected].com.cn[email protected].com.cn[email protected].com.cn[email protected].com.cn[email protected].com.cn[email protected].com.cn[email protected].com.cn[email protected].com
.cn[email protected].com.cn[email protected].com.cn[email protected].com.cn[email protected].com.cn[email protected].com.cn[email protected].com.cn[email protected].com.cn[email protected].com.cn[email protected].com.cn
[email protected]
.com.cn[email protected].com.cn 李<[email protected].com.cn>

用正則表示式處理了大部分資料,最後一行手動解決,除去< , >

xls檔案

然後書寫c程式碼生成xls檔案。
在qt creator中輸入以下程式碼

#include <stdio.h>
#include <stdlib.h>

int main(){
    FILE *fp = fopen("cin.txt","r");
    FILE *res = fopen("people.xls","w");
    char *buff = (char *)malloc(100);
    if(fp == NULL){
        printf("cin.txt fopen failed.\n");
        goto end;
    }
    if(res == NULL){
        printf("xls fopen failed.\n");
        goto end;
    }
    fprintf(res,"姓名\t電子郵件地址\n");
    while(fscanf(fp,"%s",buff) != EOF){
        fprintf(res,"%s\t",buff);
        fscanf(fp,"%s",buff);
        fprintf(res,"%s\n",buff);
    }
end:
    fclose(fp);
    fclose(res);
    free(buff);
    return 0;
}

office Excel一般是以ANSI編碼檢視檔案的
我們的qt creator是UTF-8編碼的。
所以qt中的漢字輸出到檔案中可能產生亂碼。
為了保證字元編碼的統一,可以約定cin.txt,people.xls,main.c的編碼都為ANSI編碼。

記事本:
另存為 - 改變編碼 - ANSI。
qt上修改:
編輯 - set encoding - GBK

然後編譯執行即可,得到的xls檔案用EXCEL開啟,然後另存為csv即可。

csv檔案

我們可以直接修改C程式生成CSV檔案。 xls檔案單元項是以\t為分隔符的,而CSV檔案是以,為分隔符的。
所以新的程式碼為

#include <stdio.h>
#include <stdlib.h>

int main(){
    FILE *fp = fopen("cin.txt","r");
    FILE *res = fopen("people.csv","w");
    char *buff = (char *)malloc(100);
    if(fp == NULL){
        printf("cin.txt fopen failed.\n");
        goto end;
    }
    if(res == NULL){
        printf("xls fopen failed.\n");
        goto end;
    }
    fprintf(res,"姓名,電子郵件地址\n");
    while(fscanf(fp,"%s",buff) != EOF){
        fprintf(res,"%s,",buff);
        fscanf(fp,"%s",buff);
        fprintf(res,"%s\n",buff);
    }
end:
    fclose(fp);
    fclose(res);
    free(buff);
    return 0;
}

在foxmail中點選左下角的聯絡人圖示,然後選擇右上角的目錄圖示,進一步操作:匯入 - CSV檔案 - 選擇附件。
有了這些資訊,我們直接輸入中文,查詢郵件聯絡人會很方便。

相關推薦

foxmail 批量匯入收件人郵箱資訊

問題產生的背景: 用foxmail發郵件時,填寫收件人,每次輸入別人的郵箱時要換成英文輸入,有時還要得判斷是不是我想找的那個人,確實麻煩。怎樣將一份別人發過來的郵件中的收件人資訊一次性全匯入foxmail呢? foxmail郵箱的聯絡人可用cs

Office365跨訂閱遷移郵箱-批量匯入使用者PST檔案

前面的文章分享瞭如何批量匯出Office365使用者的郵箱PST檔案,這篇就接著分享如果批量上傳PST檔案到新的訂閱 首先我申請了一個新的國際版Office365訂 並且我建立了4個目標賬號,可以看出來和我的源郵箱賬號還是又一定差異的 然後還是需要對當然Exchange管理員授予mailbo

BAPI--使用HR_INFOTYPE_OPERATION函式批量匯入HR資訊紀錄程式碼樣例(0759資訊型別)

report  zp_pa_ecm_conv_0759        no standard page heading. * tablestables:       pernr.  "Standard Selections for HR Master Data * infot

批量匯入(單檔案的檔案上傳 + 解析上傳的csv檔案 ,匯入至資料庫 ,反饋資訊

freemaker 部分 <form action="${base}/lot/save" method="post" enctype="multipart/form-data" > <input type="file" name="file" class

Foxmail+DavMail訪問Exchange郵箱

IT isp style blog splay play HR tps ref 原文地址: Foxmail加DavMail訪問Exchange郵箱 Foxmail+DavMail訪問Exchange郵箱

批量匯入資料(Mysql)報MySQL server has gone away 問題的解決方法

問題分析 首先度娘:mysql出現ERROR : (2006, 'MySQL server has gone away') 的問題意思就是指client和MySQL server之間的連結斷開了。    造成這樣的原因一般是sql操作的時間過長,或者是傳送的資料太大(例如使用inser

C++批量匯入檔案

如果這樣做: for (int i = 1; i<= 100; i++) { img = imread(“D:\低解析度截圖重新命名\%d.jpg”, i); imgs.push_back(img); } 看似不報錯,但是如果imshow一下,就會發現根本沒有讀圖。 對於檔案流,和普通

jdbc百萬資料批量匯入,流式讀取

Connection connReader = null; Connection connWrite = null; String url = "jdbc:mysql://XX:3306/XX?" + "user=XX&password=XX&

CAS統一登入認證(13): ldap 批量匯入使用者

cas登入後臺驗證賬號來自ldap,需要批量匯入賬號到ldap,這個問題幾經研究,最後方法如下:  先編寫程式生成ldif格式檔案,然後再在ldapadmin.exe程式或 phpldapadmin網頁中匯入這個ldif檔案 1. 生成的ldif檔案格式: 【空行】 dn: u

使用kettle來根據時間戳或者批次號來批量匯入資料,達到增量的效果。

1、Kettle是一款國外開源的ETL工具,純java編寫,可以在Window、Linux、Unix上執行,資料抽取高效穩定。下載圖形化介面的zip包格式的,直接解壓縮使用即可。安裝部署模式這裡不說了,自己可以根據自己的需求安裝為單機模式或者叢集模式。    Kettle的社群官

C# 批量匯入 SqlBulkCopy

  快速批量匯入方法 SqlBulkCopy 1 public string InsertSqlBulkCopy(DataTable dt, string tableName, ref string errinfo) 2 {

【轉載】QP02檢驗計劃批量匯入

其他參考: https://archive.sap.com/discussions/thread/3430191 *&---------------------------------------------------------------------* *& PROGRAM

使用solr批量匯入mysql資料庫,以及Unable to read: dataimport.properties等坑

折騰了一下午終於成功了!先放一張成功圖: 成功把mysql的資料新增進去了,我這裡是整合了tomcat9,整合步驟挺麻煩的,百度一大堆! 這裡主要介紹批量匯入資料,這裡有些坑,所以記錄一下: 步驟: 第一: 引入需要的jar包 我這裡把home目錄放外面了,所以核心配置檔案引入jar包需要改一下

本地安裝易郵郵箱伺服器並用foxmail 連線測試(內含郵箱網路傳輸的小知識.)

  1、javaMail:是Sun釋出的用來處理email的API,是提供給開發者處理電子郵件相關的程式設計介面。

Solr批量匯入資料

1、從solr 4.10.3 的dist 下 所需Jar包複製一份到 solr_home的索引庫(db1 是我自己新建的索引庫)下lib下 如果沒有就新建 2、在索引庫(db1)的核心配置檔案(solrconfig.xml)中 新增請求處理器。 <requestHand

將根據時間戳增量資料方案修改為根據批次號增量資料方案 使用kettle來根據時間戳或者批次號來批量匯入資料,達到增量的效果。

1、之前寫過根據時間戳來增量資料,時間戳增量資料存在一定的缺點,就是如果開啟自動的話,以後如果因為某個外在因素出錯了,那麼這個開始時間和結束時間不好控制,那麼就可能造成一些其他資料量不準的情況,但是根據批次號不會出現這個問題: 使用kettle來根據時間戳或者批次號來批量匯入資料,達到增量的效果。

批量儲存一條資訊

// 閘道器儲存     @RequestMapping(value = "/gatewayUpdate/{roomid}", method = RequestMethod.POST)     @ResponseBody  &nb

銷售訂單批量匯入(1)

    注意:數量和金額必須用字元,否則 0.81 會變成81 *&---------------------------------------------------------------------

【Springboot+mybatis】 解析Excel並批量匯入到資料庫

【Springboot+mybatis】 解析Excel並批量匯入到資料庫 置頂 2018年01月16日 20:05:52 冉野丶 閱讀數:4060 標籤: excel匯入資料庫 檔案上傳 excel解析 更多 個人分類: POI 工作問題歸納 版權宣告:本文為博主原創文章,未經博主允許不得

react下批量匯入資料無法覆蓋原資料中的input值的問題(利用antd design外掛)

最近在寫一個需求,要求批量匯入資料後要把原來的列表資料全部覆蓋,包括匯入的資料與原來的列表資料重複的值。 如果匯入的資料中與原來列表的資料沒有重複的值,那就重新setState一下就好;那如果列表中有資料A,並且A的一個屬性通過input編輯過,此時再批量匯入資料包含資料A的話,那就不能覆蓋已經