- 1
- 2
- 3
- 4
- 5
foreach (string id in sourceIDs.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries))
{
sourceId = Convert.ToInt32(id);
break;
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+947.7
foreach (string id in sourceIDs.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries))
{
sourceId = Convert.ToInt32(id);
break;
}
Как взять первую цифру в строке - конечно без цикла тут никак
+98
static void CompressFile(string inFilename,
string outFilename)
{
FileStream sourceFile = File.OpenRead(inFilename);
FileStream destFile = File.Create(outFilename);
// Create the Compressed stream
GZipStream compStream =
new GZipStream(destFile, CompressionMode.Compress);
// Write the data
int theByte = sourceFile.ReadByte();
while (theByte != -1)
{
compStream.WriteByte((byte)theByte);
theByte = sourceFile.ReadByte();
}
// Clean it up
sourceFile.Close();
compStream.Close();
destFile.Close();
}
Пример из книги "Microsoft .NET Framework 2.0 Application Development Foundation", официального пособия для подготовки к экзамену 70-536.
Угадайте, почему "сжатые" файлы получаются больше несжатых.
+135.9
StiReport report = // создание отчета StimulSoft Reporter
// . . . . .
// . . . . .
string tempfilename = System.Guid.NewGuid().ToString() + ".tmp";
report.ExportDocument(StiExportFormat.Word2007, tempfilename); //позволяет конвертировать отчет только в поток
FileStream stream = new FileStream(tempfilename, FileMode.Open);
byte[] reportFile = new byte[stream.Length];
stream.Read(reportFile, 0, (int)stream.Length);
stream.Close();
File.Delete(tempfilename);
if (reportFile.Length > 0)
if (MessageBox.Show("Зберегти друковану форму?", "Запит", MessageBoxButtons.OKCancel) == DialogResult.OK)
WriteToDB(reportFile, "Документ.docx");
+105.3
public class ImportService : System.Web.Services.WebService
{
private const string KEY = "*******";
[WebMethod]
public void AddFileInQueue(string aKey, ..., out String error)
{
...
if (KEY == aKey)
...
else
{
error = "Invalid key";
}
}
}
Мне предложили использовать эту же авторизацию для нового веб-сервиса в том же проекте со словами "there is normal login implemented somewhere"
+132.9
public string removeSpecialCharacters(string orig) {
string rv;
rv = orig.Replace("\\", " ");
rv = rv.Replace("(", " ");
rv = rv.Replace(")", " ");
rv = rv.Replace("/", " ");
rv = rv.Replace("-", " ");
rv = rv.Replace(",", " ");
rv = rv.Replace(">", " ");
rv = rv.Replace("<", " ");
rv = rv.Replace("-", " ");
rv = rv.Replace("&", " ");
rv = rv.Replace("'", "");
rv = rv.Replace("\u2019", ""); // smart forward (possessive) quote.
rv = rv.Replace(" ", "");
rv = rv.Trim(' '); // Remove leading and trailing spaces.
return (rv);
}
+94
if (comboBox4.Text == "Да")
{
ph[0] = (p11p * ph[0]) / ((p11p * ph[0]) + (p11n * (Convert.ToDouble(1) - ph[0])));
ph_[1] = ph[0];
}
if (comboBox4.Text == "Да напевно")
{
str = (p11p * ph[0]) / ((p11p * ph[0]) + (p11n * (Convert.ToDouble(1) - ph[0])));
str = (str - ph[0]) / 2;
ph[0] += str;
ph_[1] = ph[0];
}
if (comboBox4.Text == "Нет")
{
ph[0] = (ph[0] * (Convert.ToDouble(1) - p11p)) / (Convert.ToDouble(1) - (ph[0] * p11p) - (p11n * (Convert.ToDouble(1) - ph[0])));
ph_[1] = ph[0];
}
if (comboBox4.Text == "Нет напевно")
{
str = (ph[0] * (Convert.ToDouble(1) - p11p)) / (Convert.ToDouble(1) - (ph[0] * p11p) - (p11n * (Convert.ToDouble(1) - ph[0])));
str = (str - ph[0]) / 2;
ph[0] += str;
ph_[1] = ph[0];
}
if (comboBox4.Text == "Не знаю")
{
ph_[1] = ph[0];
}
+130.2
#region C++ signatures
//long TRANS2QUIK_API __stdcall TRANS2QUIK_CONNECT (
// LPSTR lpstConnectionParamsString,
// long* pnExtendedErrorCode,
// LPSTR lpstrErrorMessage,
// DWORD dwErrorMessageSize);
#endregion
#region connect
[DllImport("TRANS2QUIK.DLL", EntryPoint = "_TRANS2QUIK_CONNECT@16",CallingConvention = CallingConvention.StdCall)]
static extern long connect(string lpcstrConnectionParamsString,ref long pnExtendedErrorCode,
byte[] lpstrErrorMessage,UInt32 dwErrorMessageSize);
public static void connect_test(bool FinalPause)
{
string path = @"D:\Квики\Quik.ТХБ2007\";
Byte[] EMsg = new Byte[50];
UInt32 EMsgSz = 50;
long ExtEC = 0, rez = -1;
rez = connect(path, ref ExtEC, EMsg, EMsgSz);
Console.WriteLine("test_q.connect_test>\t\t{0} {1} ",rez & 255, ResultToString(rez&255));
//Console.WriteLine(" ExtEC={0}, EMsg={1}, EMsgSz={2}", (ExtEC & 255), EMsg, EMsgSz);
if(FinalPause)Console.ReadLine();
}
#endregion
Юзаем функцию написанную на C++ и возвращающую тип long. После неправильного маршалинга (в C++ long это 32 бита, а не 64) отсекаем лишние биты по AND.
+135.8
public static string ResultToString(long Result)
{
switch (Result)
{
case TRANS2QUIK_SUCCESS: //0
return "TRANS2QUIK_SUCCESS";
break;
case TRANS2QUIK_FAILED: //1
return "TRANS2QUIK_FAILED";
break;
case TRANS2QUIK_QUIK_TERMINAL_NOT_FOUND: //2
return "TRANS2QUIK_QUIK_TERMINAL_NOT_FOUND";
break;
case TRANS2QUIK_DLL_VERSION_NOT_SUPPORTED: //3
return "TRANS2QUIK_DLL_VERSION_NOT_SUPPORTED";
break;
case TRANS2QUIK_ALREADY_CONNECTED_TO_QUIK: //4
return "TRANS2QUIK_ALREADY_CONNECTED_TO_QUIK";
break;
case TRANS2QUIK_WRONG_SYNTAX: //5
return "TRANS2QUIK_WRONG_SYNTAX";
break;
case TRANS2QUIK_QUIK_NOT_CONNECTED: //6
return "TRANS2QUIK_QUIK_NOT_CONNECTED";
break;
case TRANS2QUIK_DLL_NOT_CONNECTED: //7
return "TRANS2QUIK_DLL_NOT_CONNECTED";
break;
case TRANS2QUIK_QUIK_CONNECTED: //8
return "TRANS2QUIK_QUIK_CONNECTED";
break;
case TRANS2QUIK_QUIK_DISCONNECTED: //9
return "TRANS2QUIK_QUIK_DISCONNECTED";
break;
case TRANS2QUIK_DLL_CONNECTED: //10
return "TRANS2QUIK_DLL_CONNECTED";
break;
case TRANS2QUIK_DLL_DISCONNECTED: //11
return "TRANS2QUIK_DLL_DISCONNECTED";
break;
case TRANS2QUIK_MEMORY_ALLOCATION_ERROR: //12
return "TRANS2QUIK_MEMORY_ALLOCATION_ERROR";
break;
case TRANS2QUIK_WRONG_CONNECTION_HANDLE: //13
return "TRANS2QUIK_WRONG_CONNECTION_HANDLE";
break;
case TRANS2QUIK_WRONG_INPUT_PARAMS: //14
return "TRANS2QUIK_WRONG_INPUT_PARAMS";
break;
default:
return "UNKNOWN_VALUE";
break;
}
}
public static string ByteToString(byte[] Str)
{
string s="";
for (int i = 0; i < Str.Length; i++)
{
s = s + Str[i].ToString();
}
return s;
}
Лежит в качестве примера на одном из сайтов.
Ну автору всё равно спасибо, пример и правда полезный (да и код прикольный :)).
+136.4
// string prefix = ...
query.Parameters[string.Format("{0}", prefix)].Value = m_Values[0];
из того же класса что и #2011
+133.7
try
{
var st = ((JsonString)options["tribes"]).Value.Split(',');
foreach (var s in st)
{
if (s != string.Empty)
{
ShowTribes.Add(s);
}
}
}
catch (KeyNotFoundException)
{ }
try
{
ShowNotes = ((JsonString)options["show_comments"]).Equals("true") || (url.IndexOf("#note_id=") != -1);
}
catch (KeyNotFoundException)
{ }
try
{
Rating = ((JsonString)options["eye"]).Value;
}
catch (KeyNotFoundException)
{ }