C#
C# LiteDB でデータベースを作成してレコードをインサートするコード
public static void createLiteDB()
{
using (LiteDatabase litedb = new LiteDatabase(@"C:\jwork\@Programming\CoreConsole\DataBase\lite.db"))
{
var col = litedb.GetCollection<customer>("customers");
customer cus = new customer
{
name = "John Doe123",
phones = new string[] { "000-0000", "111-1111" },
isActive = true,
additional = "additional data"
};
col.Insert(cus);
}
}
HTML
iPhone Safari でinputタグフォーカス時にズームさせない
<meta name="viewport" content="width=device-width,initial-scale=1.0,maximum-scale=1.0">
SQL
Oracle PLSQLをWindowsバッチファイルから実行するソースコード
SET SERVEROUTPUT ON
variable RETCODE number;
variable PSTR_PARAM varchar2(300);
execute :PSTR_PARAM := 'Param1';
execute :RETCODE := PlsqlBody.PlsqlFunction(:PSTR_PARAM);
COMMIT;
exit :num
Other
カラーパレットを表示して、選択した色でセルを塗りつぶすVBAコード
Application.Dialogs(xlDialogEditColor).Show (1)
intresult = ActiveWorkbook.Colors(1)
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = intresult
.TintAndShade = 0
.PatternTintAndShade = 0
End With
C#
.net6 で dotnet new console したときにProgram.csの中身を元に戻したいときのコード
using System;
namespace MyApp // Note: actual namespace depends on the project name.
{
internal class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello World!");
}
}
}
C#
AWS S3にファイルをアップロードするc#コード
using Amazon.S3;
using Amazon.S3.Model;
using Amazon.S3.Transfer;
using System;
namespace autocbk
{
class FAmazonS3
{
private static readonly Amazon.RegionEndpoint bucketRegionEndPoint = Amazon.RegionEndpoint.APNortheast1;
private static IAmazonS3 s3Client;
public static int UploadFile(string bucketName, string filePath)
{
try
{
s3Client = new AmazonS3Client(bucketRegionEndPoint);
TransferUtility fileTransferUtility = new TransferUtility(s3Client);
fileTransferUtility.Upload(filePath, bucketName);
return 0;
}
catch(Exception e)
{
return 9;
}
}
}
}
Other
Windowsフォルダアクセス権情報を取得して「IdentityReference」のみ抽出するPowerShellコード
PS E:\> (Get-Acl E:\test).Access | select IdentityReference
C#
c# AngleSharpでAタグのhref属性の値を取得するコード
using System;
using AngleSharp;
using AngleSharp.Html.Parser;
using System.Net;
using System.Threading.Tasks;
static void Main(string[] args)
{
Console.WriteLine("Hello World!");
Task t = WebscrapingSample();
}
static async Task WebscrapingSample()
{
var urlstring = "https://usefuledge.com";
WebClient wc = new WebClient();
try
{
string htmldocs = wc.DownloadString(urlstring);
var config = Configuration.Default;
var context = BrowsingContext.New(config);
var document = await context.OpenAsync(req => req.Content(htmldocs));
foreach ( var item in document.QuerySelectorAll("a"))
{
Console.WriteLine(item.TextContent.Trim() + " " + item.GetAttribute("href"));
}
}
catch (System.Exception)
{
throw;
}
}
Other
JavaScriptで現在の年月日を取得するコード
function getNowYMD(){
var dt = new Date();
var y = dt.getFullYear();
var m = (00 + (dt.getMonth()+1)).slice(-2);
var d = (00 + dt.getDate()).slice(-2);
var result = y + m + d;
return result;
}
var dt = new Date();
C#
C#でクラスをJSONに変換するコード
static void JsonSer()
{
Data data = new Data();
data.id = 1;
data.name = "john";
data.dept = "Purchase";
string jsonStr = JsonSerializer.Serialize(data);
Console.WriteLine(jsonStr);
}
C#
ClosedXMLを使ってxlsxファイル内の文字列を検索するc#コード
/// <summary>
/// 検索結果クラス
/// </summary>
public class SearchResult
{
/// <summary>
/// ワークシート名
/// </summary>
public string workSheetName {get; set;}
/// <summary>
/// 行番号
/// </summary>
/// <value></value>
public int rowNumber{get; set;}
/// <summary>
/// 列番号
/// </summary>
/// <value></value>
public int colNumber{get; set;}
/// <summary>
/// セル値(文字列型)
/// </summary>
/// <value></value>
public string cellStringValue{get; set;}
}
/// <summary>
/// xlsxファイル内を文字列検索する
/// </summary>
/// <param name=searchTerms>検索文字列</param>
/// <param name=xlsxFileFullPath>検索対象xlsxファイルパス</param>
/// <returns>検索結果(SearchResultClass)</returns>
public List<SearchResult> SearchTermsInXlsx(string searchTerms, string xlsxFileFullPath)
{
List<SearchResult> listSearchResult = new List<SearchResult>();
using(var wb = new XLWorkbook(xlsxFileFullPath))
{
foreach(var ws in wb.Worksheets){
string wsName = ws.Name;
//終端行番号取得
int lastRowUsedNumber = ws.LastRowUsed().RowNumber();
//終端列番号取得
int lastColUsedNumber = ws.LastColumnUsed().ColumnNumber();
int wRow = 0;
int wCol = 0;
for(wRow = 1; wRow <= lastRowUsedNumber; wRow++)
{
for (wCol = 1; wCol <= lastColUsedNumber; wCol++)
{
// Console.WriteLine(${wRow}:{wCol} in {wsName} {ws.Cell(wRow, wCol).Value.ToString()});
SearchResult sr = new SearchResult();
sr.workSheetName = wsName;
sr.rowNumber = wRow;
sr.colNumber = wCol;
sr.cellStringValue = ws.Cell(wRow, wCol).Value.ToString();
// セル文字列の中に検索文字列が含まれている場合、リストオブジェクトへ追加する
if(sr.cellStringValue.Contains(searchTerms)){
listSearchResult.Add(sr);
}
}
}
}
}
return listSearchResult;
}
C#
Windowsの共有フォルダアクセス権を取得するc#コード
private void button2_Click(object sender, EventArgs e)
{
string folderPath = @"C:\Windows";
System.Diagnostics.Debug.WriteLine("AreAccessRulesCanonical\tAreAccessRulesProtected");
textBox1.Text += "AreAccessRulesCanonical\tAreAccessRulesProtected" + "\r\n";
DirectorySecurity security = Directory.GetAccessControl(folderPath);
textBox1.Text += security.AreAccessRulesCanonical +
"\t" + security.AreAccessRulesProtected + "\r\n";
string ace = "AccessControlType\tAccountName\tFileSystemRights\tIsInherited"
+"\tInheritanceFlags\tPropagationFlags";
textBox1.Text += ace + "\r\n";
AuthorizationRuleCollection rules = security.GetAccessRules(true, true, typeof(NTAccount));
for (int i = 0; i < rules.Count; i++) {
FileSystemAccessRule fsar = (FileSystemAccessRule)rules[i];
ace = fsar.AccessControlType
+ "\t" + (fsar.IdentityReference as NTAccount).Value
+ "\t" + fsar.FileSystemRights.ToString()
+ "\t" + fsar.IsInherited.ToString()
+ "\t" + fsar.InheritanceFlags.ToString()
+ "\t" + fsar.PropagationFlags.ToString();
textBox1.Text += ace + "\r\n";
}
}