예제 #1
0
        /// <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();
            }));
        }
예제 #2
0
        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();
        }
예제 #3
0
        /// <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);
        }
예제 #4
0
        /// <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 = "";
예제 #5
0
        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();
        }
예제 #6
0
        /// <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);
            }
        }
예제 #7
0
        /// <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);
            }
        }
예제 #8
0
        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();
        }