-
Лучший говнокод
- В номинации:
-
- За время:
-
-
+115
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
private string ContentTransformation(string _xmlContent, string _xsltScheme)
{
try
{
XmlReaderSettings xmlRS = new XmlReaderSettings();
XPathDocument doc = new XPathDocument(XmlReader.Create(new StringReader(_xmlContent), xmlRS));
XPathNavigator nav = doc.CreateNavigator();
XmlReader reader = XmlReader.Create(new StringReader(nav.OuterXml));
reader.MoveToContent();
System.IO.StringReader strRead = new StringReader(_xsltScheme);
XslCompiledTransform xslt = new XslCompiledTransform();
xslt.Load(XmlReader.Create(strRead));
// Transform the node fragment.
StringWriter strW = new StringWriter();
XmlWriterSettings wrSet = new XmlWriterSettings();
wrSet.ConformanceLevel = ConformanceLevel.Auto;
XmlWriter xmlW = XmlWriter.Create(strW, wrSet);
xslt.Transform(reader, xmlW);
xmlW.Close();
return strW.ToString();
}
catch (ArgumentNullException anEx)
{
return "XSL преобразование не выполнено!<br>Параметр равен null.<br>" + anEx.Message;
}
catch (XsltException xsltEx)
{
return "XSL преобразование не выполнено!<br>Проверте XSL схему.<br>" + xsltEx.Message;
}
catch (Exception ex)
{
return ex.Message;
}
}
Учимся применять XSL шаблон к XML данным, и между делом поглядываем в сий гениальный шедевр - в нем вся истина о том, как четко и со вкусом, а главное элегантно выполнить эту задачу. Да еще и обработка ошибок сделана! Шикарный кусок.
dreaktor,
14 Ноября 2010
-
+115
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
private string GetSubURI(string _stringURI)
{
if (_stringURI.IndexOf("http://") > -1)
{
int counter = 0;
int chNumber = -1;
for (int i = 0; i <= _stringURI.Length - 1; i++)
{
if (_stringURI[i] == '/')
counter++;
if (counter == 3)
{
chNumber = i + 1;
break;
}
}
return _stringURI.Substring(chNumber, (_stringURI.Length - chNumber) - 1);
}
else
{
int chNumber = -1;
for (int i = _stringURI.Length - 1; i >= 0; i--)
{
if (_stringURI[i] == '/')
{
chNumber = i;
break;
}
}
if (chNumber != -1)
return _stringURI.Substring(0, chNumber);
else
return "";
}
}
Элегантный адаптер строк для другой функции, кушающей урлы, возвращаемые этим шедевром.
Это хозяйство досталось в наследство от уволенного "разработчика .NET".
Я сохранил, вдруг пригодиться .... и не прогадал :)
dreaktor,
14 Ноября 2010
-
+115
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
static final class Single extends Node {
Node dup(boolean not) {
if (not)
return new NotSingle(ch);
else
return new Single(ch);
}
boolean study(TreeInfo info) {
info.minLength++;
info.maxLength++;
return next.study(info);
}
static final class NotSingle extends Node {
Node dup(boolean not) {
if (not)
return new Single(ch);
else
return new NotSingle(ch);
}
boolean study(TreeInfo info) {
info.minLength++;
info.maxLength++;
return next.study(info);
}
}
static final class SingleA extends Node {
Node dup(boolean not) {
if (not)
return new NotSingleA(ch);
else
return new SingleA(ch);
}
boolean study(TreeInfo info) {
info.minLength++;
info.maxLength++;
return next.study(info);
}
}
static final class NotSingleA extends Node {
int ch;
NotSingleA(int n) {
ch = ASCII.toLower(n);
}
Node dup(boolean not) {
if (not)
return new SingleA(ch);
else
return new NotSingleA(ch);
}
boolean study(TreeInfo info) {
info.minLength++;
info.maxLength++;
return next.study(info);
}
}
static final class Ctype extends Node
Node dup(boolean not) {
if (not) {
return new NotCtype(ctype);
} else {
return new Ctype(ctype);
}
}
boolean study(TreeInfo info) {
info.minLength++;
info.maxLength++;
return next.study(info);
}
}
далее идут
static final class SingleU extends Node {
static final class NotCtype extends Node {
static final class NotSingleU extends Node {
c очевидно какими методами внутри
суровое ООП, главное что это не школьная поделка, а серъезнейший продукт
продолжение #3976 #3975 #3940
3.14159265,
16 Августа 2010
-
+115
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
for (i = 0; i < count; i++) {
int c = buf[i];
c = Character.toUpperCase(c);
c = Character.toLowerCase(c);
tmp[i] = c;
}
//в совсем другом месте
int cc = Character.toUpperCase(c);
cc = Character.toLowerCase(cc);
в честь праздника начну ряд публикаций откопаной мною золотой жилы, полной зловонной жижей до краев.
дабы сохранить объективность голосования источник будет чуть позже
3.14159265,
13 Августа 2010
-
+115
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
public void F2()
{
Console.Clear();
try
{
Console.Write("Введите имя файла для добавления данных:");
string str1 = Console.ReadLine();
try
{
FileStream dd = new FileStream("C:\\" + str1 + ".txt", FileMode.Open);
dd.Close();
}
catch
{
Console.WriteLine(" Файл с таким именем не существует ");
Console.WriteLine(" Будет создан новый файл");
Console.WriteLine();
Console.WriteLine(" Нажмите Enter для продолжения");
Console.ReadLine();
}
Console.Clear();
FileStream f = new FileStream("C:\\" + str1 + ".txt", FileMode.Append);
StreamWriter zapis = new StreamWriter(f);
Console.WriteLine("вводите текст , 'стоп' для завершения");
string s;
do
{
Console.Write(": ");
s = Console.ReadLine();
if (s != "стоп")
{
s = s + "\r\n";
zapis.Write(s);
}
}
while (s != "стоп");
zapis.Close();
f.Close();
Console.WriteLine("Файл успешно добавлен");
}
catch
{
Console.WriteLine("error");
}
}
Проверка на существования файла
Nigma143,
08 Августа 2010
-
+115
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
public static string GetTable(int type, string title, string[][] rows)
{
bool flag2;
int num;
bool isEmpty = false;
string str = "";
switch (type)
{
case 1:
str = str + "\r\n <div class='clear'> </div>\r\n\t\t\r\n\t\t <div class='down'>\r\n \r\n\t\t\t\t\t <div class='ProperyDetailHeading'>\r\n\t\t\t\t\t\t <span class='color2'>" + title + "</span>\r\n\t\t\t\t\t </div>\r\n\t\t\t\t\t <div class='PropertyDetailContent'>\r\n\t\t\t\t\t\t <div class='PropertyDetailInformation content_inner'>\r\n\t\t\t\t\t\t\t <table summary='Test Table'>\r\n\t\t\t\t\t\t\t\t <tbody>";
if ((rows != null) && (rows.Length > 0))
{
flag2 = true;
for (num = 0; num < rows.Length; num++)
{
if ((rows[num] != null) && (rows[num].Length > 0))
{
str = str + GetTableRow(ref flag2, rows[num][0], rows[num][1], ref isEmpty);
}
}
}
break;
case 2:
......
ASP.NET, пакистанские кодеры. Вообще весь код с сайта можна поместить на сайте отдельным разделом. В проекте вообще не используются контролы типа DataGrid/FormView.. даже DataSource. У них и тэмплэйты свои :(.. Грустно так все...(
Coffeeholic,
30 Июля 2010
-
+115
- 1
s.replaceAll("(\\/\\.\\.\\/)+", "/").replaceFirst("^((\\.)+\\/)+", "");
вот такие вот суровые паттерны
как я это увидел - мне сразу вид двух друзей переханных трактором вспомнился
String s="../../../a./../../files/file1.rar"; // надо убрать строки вида "../"
3.14159265,
28 Июля 2010
-
+115
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
Function isEQ(x,y : Real) : Boolean;
Begin
if(x = y) Then isEQ := True Else isEQ := False;
End;
Begin
{...}
End.
Не выспался...
x0wl,
18 Июля 2010
-
+115
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
private int? ID {
set {
if (ViewState["ID"] != null)
ViewState["ID"] = value;
else
ViewState.Add("ID", value);
}
get {
if (ViewState["ID"] != null)
return Convert.ToInt32(ViewState["ID"]);
else
return null;
}
}
Back,
24 Июня 2010
-
+115
- 1
<%=Convert.ToDateTime(item.CreatedOnDate).ToString("D", new System.Globalization.CultureInfo(System.Globalization.CultureInfo.CurrentCulture.ToString()))%>
Кусок кода, который отображает некую дату
phoenixx,
13 Июня 2010