/// <summary> /// 从本地数据库获取章节 /// </summary> void GetChapters(int sourceID, string novel) { chapters = new List <Chapter>(); chapterItems = new List <ListViewItem>(); Chapter chapter; ListViewItem item; //根据小说名和网站查找 string sql = "select * from chapters where novel=@novel and webIndex=@index"; List <SQLiteParameter> parameters = new List <SQLiteParameter>(); parameters.Add(new SQLiteParameter("index", sourceID)); parameters.Add(new SQLiteParameter("novel", novel)); DataTable table = MySqlite.GetData(sql, parameters); for (int i = 0; i < table.Rows.Count; i++) { chapter = new Chapter(); chapter.novel = table.Rows[i][0].ToString(); chapter.chapter = table.Rows[i][1].ToString(); chapter.web = Convert.ToInt32(table.Rows[i][2].ToString()); chapter.site = table.Rows[i][3].ToString(); chapters.Add(chapter); string[] ss = { chapter.chapter, chapter.site }; item = new ListViewItem(ss); chapterItems.Add(item); } Invoke(new Action(delegate { AddChaptersList(); })); }
private void button_ok_Click(object sender, EventArgs e) { string s1 = textBox_source.Text.Trim(); //原屏蔽词 string s2 = textBox_des.Text.Trim(); //新屏蔽词 string s4 = textBox_desinstead.Text.Trim(); //新替换词 if (s1 == s2) { return; } s1 = s1.Replace("'", "''");//单引号转义 s2 = s2.Replace("'", "''"); s4 = s4.Replace("'", "''"); string sql = "select * from blackWords where words=@word"; //查重 List <SQLiteParameter> parameters = new List <SQLiteParameter>(); parameters.Add(new SQLiteParameter("word", s2)); DataTable table = MySqlite.GetData(sql, parameters); if (table.Rows.Count > 0) { MessageBox.Show("已存在相同项"); return; } sql = "update blackWords set words=@word,@instead=instead,date=@date where words=@oldword"; parameters = new List <SQLiteParameter>(); parameters.Add(new SQLiteParameter("word", s2)); parameters.Add(new SQLiteParameter("instead", s4)); parameters.Add(new SQLiteParameter("date", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"))); parameters.Add(new SQLiteParameter("oldword", s1)); MySqlite.ExecSql(sql, parameters); Close(); }
/// <summary> /// 查询所有屏蔽关键词 /// </summary> void GetData() { listView1.Items.Clear(); string sql = "select * from blackWords order by date desc"; DataTable table = MySqlite.GetData(sql); ListViewItem[] items = new ListViewItem[table.Rows.Count]; for (int i = 0; i < items.Length; i++) { string[] ss = { table.Rows[i][0].ToString(), table.Rows[i][1].ToString(), table.Rows[i][2].ToString(), table.Rows[i][3].ToString() }; items[i] = new ListViewItem(ss); } listView1.Items.AddRange(items); }
/// <summary> /// 获得每个小说、每个来源的章节数目统计 /// </summary> void GetChapterCount() { string sql; DataTable table; if (!all) //只显示当前小说 { sql = "select webIndex,count(*) from chapters where novel=@novel GROUP BY webIndex"; List <SQLiteParameter> parameters = new List <SQLiteParameter>(); parameters.Add(new SQLiteParameter("novel", novel)); table = MySqlite.GetData(sql, parameters); } else //显示所有小说 { sql = "select webIndex,count(*),novel from chapters GROUP BY webIndex,novel ORDER BY novel,webIndex"; table = MySqlite.GetData(sql); if (listView1.Columns.Count == 2) { ColumnHeader header = new ColumnHeader(); header.Text = "小说名"; header.Width = 100; listView1.Columns.Insert(0, header); } } itemsLv1 = new List <ListViewItem>(); sourceIndex = new List <int>(); listView1.Items.Clear(); for (int i = 0; i < table.Rows.Count; i++) { int index = Convert.ToInt32(table.Rows[i][0]); string website = Tools.InitSource(index, false); string[] ss = new string[] { website, table.Rows[i][1].ToString() }; if (all) { ss = new string[] { table.Rows[i][2].ToString(), website, table.Rows[i][1].ToString() } } ; ListViewItem item = new ListViewItem(ss); itemsLv1.Add(item); sourceIndex.Add(index); } listView1.Items.AddRange(itemsLv1.ToArray()); } List <Chapter> chapters; List <ListViewItem> chapterItems; string chapterKeyword = "";
void GetData() { string sql = "select * from bookshelf order by date desc"; DataTable table = MySqlite.GetData(sql); chapters = new List <Chapter>(); for (int i = 0; i < table.Rows.Count; i++) { Chapter chapter = new Chapter(); chapter.novel = table.Rows[i][0].ToString(); chapter.chapter = table.Rows[i][1].ToString(); chapter.web = Convert.ToInt32(table.Rows[i][2].ToString()); chapter.site = table.Rows[i][3].ToString(); chapter.lastDate = table.Rows[i][4].ToString(); chapters.Add(chapter); } AddList(); }
/// <summary> /// 查询屏蔽词语 /// </summary> void GetBlackWords() { blackWords = new List <BlackWord>(); string sql = "select words,insteadWords,type from blackWords order by length(words) desc"; DataTable table = MySqlite.GetData(sql); BlackWord word1; for (int i = 0; i < table.Rows.Count; i++) { word1 = new BlackWord(); string word = table.Rows[i][0].ToString().Trim(); string instead = table.Rows[i][1].ToString().Trim(); string type = table.Rows[i][2].ToString().Trim(); word1.word = word; word1.type = type; word1.instead = instead; blackWords.Add(word1); } }
/// <summary> /// 从本地数据库获取章节,该方法是从ChaptersList中拷贝来的 /// </summary> void GetChapters(int sourceID, string novel) { chapters = new List <Chapter>(); Chapter chapter; //根据小说名和网站查找 string sql = "select * from chapters where novel=@novel and webIndex=@index"; List <SQLiteParameter> parameters = new List <SQLiteParameter>(); parameters.Add(new SQLiteParameter("index", sourceID)); parameters.Add(new SQLiteParameter("novel", novel)); DataTable table = MySqlite.GetData(sql, parameters); for (int i = 0; i < table.Rows.Count; i++) { chapter = new Chapter(); chapter.novel = table.Rows[i][0].ToString(); chapter.chapter = table.Rows[i][1].ToString(); chapter.web = Convert.ToInt32(table.Rows[i][2].ToString()); chapter.site = table.Rows[i][3].ToString(); chapters.Add(chapter); } }
private void button_ok_Click(object sender, EventArgs e) { string txt = textBox1.Text.Trim(); if (string.IsNullOrEmpty(txt)) { return; } txt = txt.Replace("'", "''"); //单引号转义 string sql = "select * from blackWords where words=@word"; //查重 List <SQLiteParameter> parameters = new List <SQLiteParameter>(); parameters.Add(new SQLiteParameter("word", txt)); DataTable table = MySqlite.GetData(sql, parameters); if (table.Rows.Count > 0) { MessageBox.Show("已存在相同项"); return; } string txt1 = textBox2.Text.Trim().Replace("'", "''"); string type = "词语"; if (radioButton2.Checked) { type = "正则表达式"; } sql = "insert into blackWords values(@word,@instead,@type,@date)"; parameters = new List <SQLiteParameter>(); parameters.Add(new SQLiteParameter("word", txt)); parameters.Add(new SQLiteParameter("instead", txt1)); parameters.Add(new SQLiteParameter("type", type)); parameters.Add(new SQLiteParameter("date", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"))); MySqlite.ExecSql(sql, parameters); Close(); }