Otamajakushi 1.2.0
dotnet add package Otamajakushi --version 1.2.0
NuGet\Install-Package Otamajakushi -Version 1.2.0
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Otamajakushi" Version="1.2.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Otamajakushi --version 1.2.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Otamajakushi, 1.2.0"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Otamajakushi as a Cake Addin #addin nuget:?package=Otamajakushi&version=1.2.0 // Install Otamajakushi as a Cake Tool #tool nuget:?package=Otamajakushi&version=1.2.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Otamajakushi
Otamajakushiは、OTM-JSON(OneToMany-JSON)を解析するライブラリです。
サンプルプログラム
OTM-JSONファイルの読み込み
using System.IO;
using Otamajakushi;
namespace ConsoleApp
{
public class ConsoleApp
{
public void Program()
{
var json = File.ReadAllText(@"input.json");
var dictionary = OneToManyJsonSerializer.Deserialize(json);
}
}
}
OTM-JSONファイルの書き込み
using System.IO;
using System.Text.Encodings.Web;
using System.Text.Unicode;
using Otamajakushi;
namespace ConsoleApp
{
public class ConsoleApp
{
public void Program()
{
var dictionary = new OneToManyJson();
var options = new System.Text.Json.JsonSerializerOptions
{
Encoder = JavaScriptEncoder.Create(UnicodeRanges.All),
WriteIndented = true,
};
var json = OneToManyJsonSerializer.Serialize(dictionary, options);
File.WriteAllText(@"output.json", json);
}
}
}
単語の追加
namespace ConsoleApp
{
public class ConsoleApp
{
public void Program()
{
var dictionary = new OneToManyJson();
dictionary.AddWord(new Word
{
Entry = new Entry
{
Form = "test",
// ID を指定しなかった場合は、デフォルトで 0 が設定されます。
// AddWordメソッドは、 ID が他の単語と重複している場合、自動的に ID を修正します。
},
});
var options = new System.Text.Json.JsonSerializerOptions
{
Encoder = JavaScriptEncoder.Create(UnicodeRanges.All),
WriteIndented = true,
};
var json = OneToManyJsonSerializer.Serialize(dictionary, options);
File.WriteAllText(@"output.json", json);
}
}
}
関連語の自動修正
namespace ConsoleApp
{
public class ConsoleApp
{
public void Program()
{
var dictionary = new OneToManyJson();
dictionary.AddWord(new Word
{
Entry = new Entry
{
Form = "大きい",
},
Relations = new List<Relation>
{
new Relation
{
Title = "対義語",
Entry = new Entry
{
Form = "小さい",
},
},
},
});
dictionary.AddWord(new Word
{
Entry = new Entry
{
Form = "小さい",
},
Relations = new List<Relation>
{
new Relation
{
Title = "対義語",
Entry = new Entry
{
Form = "大きい",
},
}
},
});
dictionary.RelationIdCompletion();
/* RelationIdCompletion メソッドで、 *
* 関連語に ID を設定していなくても、 *
* 自動的に ID を関連付けてくれます。 */
var options = new System.Text.Json.JsonSerializerOptions
{
Encoder = JavaScriptEncoder.Create(UnicodeRanges.All),
WriteIndented = true,
};
var json = OneToManyJsonSerializer.Serialize(dictionary, options);
File.WriteAllText(@".\..\..\output5.json", json);
}
}
}
Version
Version 1.0.0
- Otamajakushi リリース
Version 1.1.0
- ZpDIC 内で用いるデータがうまく扱えない問題を修正
- 自動でIDを振って、単語を追加する機能を追加
- 自動で関連語のIDを関連付ける機能を追加
Version 1.2.0
- 多くのクラスで比較可能に(
==
と!=
が使えるように)なった - 自動で重複した項目を削除
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
.NETStandard 2.0
- System.Text.Json (>= 4.7.2)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.