using
System;
using System.Collections.Generic;
using System.Text;
using System.Data.OleDb;
using System.Data;
using Microsoft.Win32;
namespace DataLink
... {
//数据库连接类
public class MoveLink
...{
public DataSet myds = new DataSet();
string sql = "";
public void selconn(string table, string name, string value)
...{
sql = "SELECT " + name + " from " + table + " WHERE " + value;
myconn(true);
}
public void insconn(string table, string name, string value)
...{
sql = "INSERT INTO " + table + "(" + name + ") VALUES(" + value + ")";
myconn(false);
}
public void updconn(string table, string value1, string value2)
...{
sql = "UPDATE " + table + " SET " + value1 + " WHERE " + value2;
myconn(false);
}
private void myconn(bool turnback)//判断是否要返回到数据集,或者直接执行
...{
OleDbConnection conn = new OleDbConnection();
conn.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|/SPdata/SPdata.accdb";//该数据库路径将从外部读入.
conn.Open();
if (turnback)
...{
OleDbDataAdapter da = new OleDbDataAdapter(sql, conn);
da.Fill(myds);
}
else
...{
OleDbCommand com = new OleDbCommand(sql, conn);
com.ExecuteNonQuery();
}
conn.Close();
}
}
//注册表增改类
public class MoveReg
...{
public string RegOpen(string path,string keyName)
...{
RegistryKey key = Registry.LocalMachine.CreateSubKey(path);
string mystr;
try
...{
mystr = key.GetValue(keyName).ToString();
}
catch (Exception)
...{
key.SetValue(keyName, "※请输入..");
mystr = "※请输入..";
}
return mystr;
}
public void RegSave(string path, string keyName, string value)
...{
RegistryKey key = Registry.LocalMachine.CreateSubKey(path);
key.SetValue(keyName, value);
}
}
//字符串拆解组合类
public class Movestr
...{
public string[] BreakWord(string str)
...{
const int N = 1;//设制自增数组段大小
string[] Bword = new string[N];
string[] temp;
string mystr = str;
for (int i = 0; mystr.LastIndexOf("※") > -1; i++)
...{
temp = new string[Bword.Length];
Array.Copy(Bword, temp, Bword.Length);
Bword = new string[temp.Length + N];
Array.Copy(temp, Bword, temp.Length);
Bword[i] = mystr.Substring(mystr.LastIndexOf("※") + 1, mystr.Length - mystr.LastIndexOf("※") - 1);
mystr = mystr.Remove(mystr.LastIndexOf("※"));
}
return Bword;
}
public string AddWord(string[] str)
...{
string addtxt = "";
for (int i = 0; i < str.Length; i++)
...{
addtxt += "※" + str[i];
}
return addtxt;
}
}
}
using System.Collections.Generic;
using System.Text;
using System.Data.OleDb;
using System.Data;
using Microsoft.Win32;
namespace DataLink
... {
//数据库连接类
public class MoveLink
...{
public DataSet myds = new DataSet();
string sql = "";
public void selconn(string table, string name, string value)
...{
sql = "SELECT " + name + " from " + table + " WHERE " + value;
myconn(true);
}
public void insconn(string table, string name, string value)
...{
sql = "INSERT INTO " + table + "(" + name + ") VALUES(" + value + ")";
myconn(false);
}
public void updconn(string table, string value1, string value2)
...{
sql = "UPDATE " + table + " SET " + value1 + " WHERE " + value2;
myconn(false);
}
private void myconn(bool turnback)//判断是否要返回到数据集,或者直接执行
...{
OleDbConnection conn = new OleDbConnection();
conn.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|/SPdata/SPdata.accdb";//该数据库路径将从外部读入.
conn.Open();
if (turnback)
...{
OleDbDataAdapter da = new OleDbDataAdapter(sql, conn);
da.Fill(myds);
}
else
...{
OleDbCommand com = new OleDbCommand(sql, conn);
com.ExecuteNonQuery();
}
conn.Close();
}
}
//注册表增改类
public class MoveReg
...{
public string RegOpen(string path,string keyName)
...{
RegistryKey key = Registry.LocalMachine.CreateSubKey(path);
string mystr;
try
...{
mystr = key.GetValue(keyName).ToString();
}
catch (Exception)
...{
key.SetValue(keyName, "※请输入..");
mystr = "※请输入..";
}
return mystr;
}
public void RegSave(string path, string keyName, string value)
...{
RegistryKey key = Registry.LocalMachine.CreateSubKey(path);
key.SetValue(keyName, value);
}
}
//字符串拆解组合类
public class Movestr
...{
public string[] BreakWord(string str)
...{
const int N = 1;//设制自增数组段大小
string[] Bword = new string[N];
string[] temp;
string mystr = str;
for (int i = 0; mystr.LastIndexOf("※") > -1; i++)
...{
temp = new string[Bword.Length];
Array.Copy(Bword, temp, Bword.Length);
Bword = new string[temp.Length + N];
Array.Copy(temp, Bword, temp.Length);
Bword[i] = mystr.Substring(mystr.LastIndexOf("※") + 1, mystr.Length - mystr.LastIndexOf("※") - 1);
mystr = mystr.Remove(mystr.LastIndexOf("※"));
}
return Bword;
}
public string AddWord(string[] str)
...{
string addtxt = "";
for (int i = 0; i < str.Length; i++)
...{
addtxt += "※" + str[i];
}
return addtxt;
}
}
}
因为想做个比较通用的类,所以在获取字符串将其按特定字符做断开的时候,数组是不定长的,为此做了数组长度自增处理 。这样可以用最小的空间做出实际的“无限”数组。