0
A
答えて
2
あなたは、これはあなたのテーブルであれば、単純に文字列を使用してHTMLファイルを作成することができます。
<table>
<tr>
<th>Company</th>
<th>Contact</th>
<th>Country</th>
</tr>
<tr>
<td>Alfreds Futterkiste</td>
<td>Maria Anders</td>
<td>Germany</td>
</tr>
...
</table>
あなたはC#で書くことができます:
public struct HTMLTable
{
public string[] ColumnNames;
public TableColumn[] ColumnValues;
public HTMLTable(string[] columnNames, TableColumn[] columnValues)
{
ColumnNames = columnNames;
ColumnValues = columnValues;
}
}
public struct TableColumn
{
public string[] Values;
public TableColumn(string[] values)
{
Values = values;
}
}
public static class HTMLTableGenerator
{
public static string GenerateHTMLTable(HTMLTable Table)
{
StringBuilder Builder = new StringBuilder();
Builder.Append("<table>\n <tr>\n");
foreach (string ColumnName in Table.ColumnNames)
Builder.Append(" <th>" + ColumnName + "</th>\n");
Builder.Append(" </tr>\n");
foreach (var Column in Table.ColumnValues)
{
Builder.Append(" <tr>\n");
foreach (string value in Column.Values)
Builder.Append(" <td>" + value + "</td>\n");
Builder.Append(" </tr>\n");
}
Builder.Append("</table>");
return Builder.ToString();
}
}
私は答えに直接これを書いていますそれは最高のaprroachではない、あなたはまた変更を加えるべきである(columnvaluesを一致させる、htmlインデントする、CSSを追加する)。
EDIT: これは実装のexpampleある:
string[] Columns = new string[] { "Company", "Contact", "Country" };
TableColumn FirstColumn = new TableColumn(new string[] { "Alfreds Futterkiste", "Maria Anders", "Germany" });
TableColumn[] TableColumns = new TableColumn[] { FirstColumn };
HTMLTable Table = new HTMLTable(Columns, TableColumns);
string HTMLString = HTMLTableGenerator.GenerateHTMLTable(Table);
File.WriteAllText(@"C:\file.html", HTMLString);
これは、最初の列の行を作成し、C:\file.html
に保存しなければなりません。
私はちょうどそれをテストし、それは正常に動作します。
EDIT2:<a href="url">Name</a>
は、あなたがこれにTableColumn
変更することができ、これを実装するには:
は、HTMLのリンクを追加するには
public struct TableColumn
{
public Value[] Values;
public TableColumn(Value[] values)
{
Values = values;
}
}
をそして、この追加:
public struct Value
{
public string Str;
public bool IsURL;
public Value(string str, bool isURL)
{
Str = str;
isURL = IsURL;
}
}
を次に、ここに:
foreach (string value in Column.Values)
Builder.Append(" <td>" + value + "</td>\n");
に変更し、それを:
foreach (Value value in Column.Values)
{
if(value.IsURL)
Builder.Append(" <td><a href=" + value.Str + ">" + value.Str.SubString(0, 10) + "...</a></td>);
else Builder.Append(" <td>" + value.Str + "</td>");
}
EDIT3:出力フォルダ(つまりに、CSSのコードを追加したファイルにそのCSSを保存し、そのファイルに:ソリューション\プロジェクト\ binに\デバッグ\ style.cssに ")
その後HTMLTableGenerator
にこの機能を追加します。
private string GetStyle()
=> File.ReadAllText(Application.Info.StartupPath + "\\style.css");
をそして
GenerateHTMLTable()
の初めにこの行を追加します。 (Builderの作成後):
Builder.Append(GetStyle());
関連する問題
- 1. ファイルコードをコピーしますか?
- 2. PHPの表示ファイルコードを取得する
- 3. sharepoint 2010年webpartファイルコード
- 4. HTMLフォームを作成する
- 5. カスタムボーダーhtmlを作成する
- 6. VBA ExcelコンテンツをHTMLに作成する(ExcelからHTMLファイルを作成する)
- 7. C#のSWFファイルコードを読み取る
- 8. ボタンを作成する関数を作成するHTML/JS
- 9. COBOLプログラムのファイルコード変換
- 10. JavaScriptスクリプトのファイルコードがノード内のコマンドと異なる動作をする
- 11. htmlで作成
- 12. HTML作成テーブル
- 13. jsonでループを作成してhtmlテーブルを作成する
- 14. イメージをHTMLから作成する
- 15. Javascriptでカレンダーを作成する(Html)
- 16. カスタムHTMLタグを作成する
- 17. htmlページからcsvを作成する
- 18. HTMLでパネルを作成する方法
- 19. Html縦列のテーブルを作成する
- 20. javascript内でHTMLを作成するAngularjs
- 21. テンプレートをHTMLで作成するベストプラクティス
- 22. Css、Html、Javascriptでグラデーションタイルを作成する
- 23. JavascriptとHTMLでスライドショーを作成する
- 24. HTMLオーディオタグでクローズドキャプションを作成する
- 25. HTMLでカレンダーを作成する
- 26. htmlでシリンダを作成する3d
- 27. 動的にHTMLモーダルウィンドウボタンを作成する
- 28. Outlook 2013でHTMLメールを作成する
- 29. HTMLからWPテンプレートを作成する
- 30. HTMLでヘルプファイルを作成する
私のマシンに保存する方法は? –
これは 'System.IO.File.WriteAllText(path、content);からファイルを作るための文字列です。答えが欲しいものなら、tick plaseをクリックしてください。 – null
HTMLTableを作成し、作成したHTMLTableでGenrateHTMLTableを呼び出します。 –