新手學習,求大神指點。
首先:在數據庫建立表--設計字段(最好和接口說明文檔里面的一致)
第一步:獲取接口中的字符串:這里獲取的是有轉義字符的字符串
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
Stream ResStream = response.GetResponseStream();
Encoding encoding = Encoding.GetEncoding("utf-8");
StreamReader streamReader = new StreamReader(ResStream, encoding);
string str = streamReader.ReadToEnd();
第二步:使用JsonReader讀str字符串:獲得沒有轉義字符的字符串;
string sJson="";
JsonReader reader = new JsonTextReader(new StringReader(str));
while (reader.Read())
{
sJson = reader.Value.ToString();
}
第三步:將json字符串變為json對象(注意這里的GG,是第四步的類名)
var v = Newtonsoft.Json.JsonConvert.DeserializeObject<GG>(sJson);
第四步:根據接口的原始數據建立類(參考JSON數據序列化和反序列化):一般接口文檔里會有說明
public class GG
{
public string code { get; set; }
public string msg { get; set; }
public string errPage { get; set; }
public string errSize { get; set; }
public INFO[] info { get; set; }
}
public class INFO
{
public int __hibernate_row_nr__ { get; set; }
public string id { get; set; }
public string XMBM { get; set; }
public string XMMC { get; set; }
}
第五步:這樣就可以在C#中使用對象v的屬性獲取值信息
if (v != null){
if(v.info != null && v.info.Count>0){
//假如info為數組,里面是對象,則需要遍歷數組
foreach (INFO i in v.info)
{
string id = i.id; //這里就可以取到接口數據中的值了,隨便你怎么用
}
}
}
第五步:分頁數據處理:將上面的代碼封裝成一個方法getData(int 頁數,int 最大條數)
//點擊按鈕循環封裝方法:最大條數是1000,一共有65頁
protected void btnSave_Click(object sender, EventArgs e)
{
for (int i = 1; i <= 65; i++)
{
getData(i,1000);
}
}
這樣,點擊按鈕就可以把數據全部導入到你的數據庫表對應的字段內了;
