|
Message Closed
modified 24-Mar-15 18:15pm.
|
|
|
|
|
Which will throw an exception when the input cannot be parsed.
Which is why I suggested using TryParse , which doesn't throw an exception.
Which would then mean that he wouldn't need a try..catch block to catch the exception from the Parse method.
"These people looked deep within my soul and assigned me a number based on the order in which I joined."
- Homer
|
|
|
|
|
Message Removed
modified 24-Mar-15 18:15pm.
|
|
|
|
|
As others have said, the code you've posted will work as expected.
However, you can avoid the try..catch block by using the TryParse methods. You should also check the result of line.Split(';') to avoid an IndexOutOfRangeException , check that the second field is a valid Enum value, and check that the dictionary doesn't already contain the key:
string[] fields = line.Split(';');
if (fields.Length < 5) return false;
long f0;
int f1, f3, f4;
if (!long.TryParse(fields[0], out f0)) return false;
if (!int.TryParse(fields[1], out f1)) return false;
if (!int.TryParse(fields[3], out f3)) return false;
if (!int.TryParse(fields[4], out f4)) return false;
if (prodFileIndexDic.ContainsKey(f0)) return false;
if (!Enum.IsDefined(typeof(ProdKategoriEnum), f1)) return false;
prodList.Add(new Produkt(f0, (ProdKategoriEnum)f1, fields[2], f3, f4));
prodFileIndexDic.Add(f0, lineIndex);
lineIndex++;
"These people looked deep within my soul and assigned me a number based on the order in which I joined."
- Homer
|
|
|
|
|
I have an application in C# which uses a SQLite database. In this database I have a table where I inserted a value encrypted with sha1, via sql query. Te problem is that I want to select that data and use it like:
cmd.CommandText = "Select * from accounts where (username=@username and password=sha1(@password));";
cmd.Parameters.AddWithValue("@password", password);
OR
cmd.CommandText = "Select * from accounts where (username=@username and password=@password);";
cmd.Parameters.AddWithValue("@password", sha1(password));
But from what I heard, I can't use sha1 like this, I have to use a function like this one, but it doesn't work:
string sha1(string password) {
byte[] byteArray = Encoding.UTF8.GetBytes(password);
return Convert.ToBase64String(sha1.ComputeHash(byteArray);
}
I receive error:
sha1(string) is a method, which is not valid in the given context
The other thing, I heard about KDF ( key definition function) which it seems to be a better encryption type but I don't really know how to use it. Can anybody help me with that?
modified 22-Mar-15 12:11pm.
|
|
|
|
|
|
Note he wrote "encryption" but meant "hashing" (sha1). I can't help him with that regarding SQLite but maybe you can add something to your answer.
Recursion: see Recursion.
|
|
|
|
|
It's ok, I want to use KDF instead, but I don't get anything of that code..I solve it with sha1..
|
|
|
|
|
|
in my forms i have combobox linked to sqlserver,the items in combobox is identity,two textbox and datetimepickers and button add ,when i press the button add at runtime i want to see the numbers of current adding information in combobox
please if you have any help answer me
think's a lot
|
|
|
|
|
Member 11545313 wrote: i have combobox linked to sqlserver
Uh, no you don't. You have a combobox bound to data that came from a database.
Member 11545313 wrote: the items in combobox is identity,two textbox and datetimepickers and button add
Quite impressive that you crammed all of that into a combobox.
Prehaps you have a combobox bound to the identity column of your data? Then you also have two textboxes, two datetime pickers and a button labeled "Add"?
Member 11545313 wrote: when i press the button add at runtime i want to see the numbers of current adding information in combobox
What do you mean by "numbers of current adding information"? That doesn't make sense at all.
|
|
|
|
|
I see your telepathy is only partially implemented!
Never underestimate the power of human stupidity
RAH
|
|
|
|
|
It's only an experimental Alpha right now. I don't plan to release a Beta version until Spring of next year.
|
|
|
|
|
Please tell me how to display a table of the Word document in DataGridView?
|
|
|
|
|
What have you tried?
Where are you stuck?
What do you need to know?
Have you read the table from the word file?
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
|
|
|
|
|
In Word there is a table. I created a form WindowsForms and added elements DataGridVew and Button.
private Word.Application wordapp;
private Word.Document worddocument;
private Word.Range wordcellrange;
private void button3_Click_1(object sender, EventArgs e)
{
wordapp = new Word.Application();
wordapp.Visible = true;
worddocument = wordapp.Documents.Open("C:\\Users\\Desktop\\Table.doc");
Word.Table _table = worddocument.Tables[1];
int a = _table.Rows.Count;
int b = _table.Columns.Count;
for (int i = 1; i <= a; i++)
for (int j = 1; j <= b; j++)
{
wordcellrange = _table.Cell(i, j).Range;
dataGridView3.Rows[i - 1].Cells[j - 1].Value = wordcellrange.Text;
}
}
Code only opens an existing file.
|
|
|
|
|
And?
Have you looked at what happens with the debugger, so you have an idea what is going on? If not, do - you need to know what part of that is doing what you expect and what part isn't. And we can;t do that for you - we don't have access to your files!
When you have debugger results, let us know what is going on - if that doesn't let you directly what the problem is.
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
|
|
|
|
|
Index outside the range. It in a debugger.
|
|
|
|
|
Good. So look at teh line that produces teh error - I don't know which it is, but the debugger will tell you.
I'd guess it's this one:
Word.Table _table = worddocument.Tables[1];
In which case, there are one or less tables in the document - remember that array indexes are zero based.
I'd check the return value to make sure that there is at least one table in there myself, and report / log a problem if there isn't.
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
|
|
|
|
|
error in this line
dataGridView3.Rows[i - 1].Cells[j - 1].Value = wordcellrange.Text;
|
|
|
|
|
And?
What does the debugger say is the value of i and j ? For that matter, what does it say about the number of rows and cells in the DGV?
Remember, I can't see your screen...
This is basic debugging - you should be able to do this unprompted!
[edit] Gah! Tablet autocorrect![/edit]
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
|
|
|
|
|
sorry! I thought that specified it
the number of rows.value of i. I changed the values and nothing happened
|
|
|
|
|
Yes, but that doesn't mean that the DataGridView had the same number of rows and columns...
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
|
|
|
|
|
I understood, in what an error! everything works thanks!
|
|
|
|
|
Easy mistake to make.
You're welcome!
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
|
|
|
|